我是一名学生,正在寻找可以帮助我进一步了解如何在编码时将访问修饰符正确应用于成员/类型的资源。

我知道(在 C# 中)访问修饰符有哪些限制,例如 private、public、protected 等。到位。当我编写自己的小项目时,我倾向于将所有内容公开。我确信这是一种绝对可怕的做法,因为它只是将封装扔出了窗外。我只是不知道什么时候使用内部和外部之类的东西是正确的。私人的。

有谁有任何好的资源来帮助我理解访问修饰符的正确使用?

有帮助吗?

解决方案

这是一个经验类型的问题。从最小特权级别开始并在必要时促进了。

在换句话说,让一切私人。直到你发现它需要被晋升为保护或公开。随着时间的推移,你会获得预期的感觉,后来发现你的类的用法。

其他提示

我只是让一切都的访问以限制性的可能:

  • 私人通过默认
  • 否则,内部,如果它是一个API暴露于其他类在这个会
  • 或者,公共如果它是一个API露在外的组件
  • 或者,受到保护,如果它的目的只能从子类。

开始把一切私人。如果你觉得有必要,修改相应的修改,直到你有感觉,要选择合适的类型。

为方便起见,请尝试使用 TDD ,否则你可能会陷入连更麻烦,当你编写单元测试...

任何类型的教程或教材都会给您相同的指导,即其他帖子已经给您的指导。因此,不要期望从“资源”中获得有关此特定问题的太多有用信息。

除此之外的主要资源是其他人编写的代码。拿一个大型 C# 项目(例如 单核细胞增多症, , 或者 夏普开发),并研究他们如何具体遵循已向您解释的原则。另外,如果您要设计一个特定的类,请尝试在系统库中考虑一个类似的类,并尝试找出它是如何实现的(通过查看 Mono 源代码,或使用 .NET 反射器)。

您应该思考一个类的接口,这是程序的必要和充分组需要,以达到其目的暴露开始。让公众。其他的一切应该是私有的。

我必须作出一切保护,这是不公开的倾向。离开我的用户的自由,做自己想做我的同班同学什么的。如果他们的课间休息,这将是他们的问题。

您需要从你知道它是如何工作的,即使是OOP关于隐藏实现一个类继承每次。您可以隐藏实现,但你不会隐藏文件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top