C# C中私有类的用途是什么#
为什么我们在c#中创建私有类?正如我们所知,私有类不能成为基类,我们也不能从它们派生类。私有类的用途和用途是什么?人们普遍认为,将代码划分为单独的逻辑单元是一种很好的做法。每个单元都有有限数量的相关责任。这使得测试代码变得更容易,一旦测试成功,这些单元就成为我们可以创建更复杂模式的构建块。私有类对于创建实现内部功能的构建块非常有用,您不一定希望使用库的其他项目可以看到这些内部功能。它们还可以实现接口,因此,如果您想设置工厂以便控制生成类的实例,那么它们非常有用--调用方仍然可以通过接口使用该类,即使他们看不到类类型本身。私有类只能在嵌套类内创建,用于检索访问,并且只能在该嵌套类内使用 私有类(实际上是私有的任何东西)很重要,因为范围的控制很重要,这是由于C# C中私有类的用途是什么#,c#,C#,为什么我们在c#中创建私有类?正如我们所知,私有类不能成为基类,我们也不能从它们派生类。私有类的用途和用途是什么?人们普遍认为,将代码划分为单独的逻辑单元是一种很好的做法。每个单元都有有限数量的相关责任。这使得测试代码变得更容易,一旦测试成功,这些单元就成为我们可以创建更复杂模式的构建块。私有类对于创建实现内部功能的构建块非常有用,您不一定希望使用库的其他项目可以看到这些内部功能。它们还可以实现接口,因此,如果您想设置工厂以便控制生成类的实例,那么它们非常有用--调用方仍然可以通过接口使用该类,
如果您正在构建一个库,它将创建一个私有类,那么您的库可以使用这些类,而使用您的库的任何人都无法看到它们。这可能会隐藏您希望隐藏的特定于实现的详细信息 如果要构建具有私有嵌套类的类,则包含类可以使用这些私有类,而其他任何人都看不到它们。同样,您可以使用它来隐藏您希望隐藏的特定于实现的细节
如果不隐藏特定于实现的详细信息(例如,通过公开私有类),则更改实现将变得更加困难,因为您无法确保库的用户没有创建对这些类的依赖关系。但是如果它们是私有的,您可以更改、替换或删除它们,而不必担心会破坏外部依赖关系。我想您的意思是私有类只能是嵌套类。。。它们不必在嵌套类中。它们只能被外部类使用。同样的原因,我们有私有的东西。除了从类派生之外,我们对类做的其他事情是什么?哦,没错,我们实例化它们——或者调用它们的静态成员。为什么你的问题忽略了类的这些用途?这个问题可能(嗯,是)很糟糕,但它不是“主要基于观点”,所以接近票数是假的。OP只是错误地认为类的唯一目的是从它们派生,而不是使用它们。越过这个错误,问题很简单,为什么会有任何类型的私有实体,这是公认的,不是一个意见问题。“如果你在构建一个库,它将是私有类…”:你通常会将这些类
内部
“如果你在构建一个库,它将是私有类…”这甚至是不可能做到的。您将得到一个CS1527错误。