|
|
1
6
它只是声明了一个嵌套类型,仅此而已。由于它是公共的,在类型内声明和在类型外声明几乎没有区别。
其他类必须通过包含类型的名称来引用它(除非它们有
当我编写一个嵌套类型时,它是私有的——它只是包含类的一个助手类;一个实现细节。当然,不一定是这样,但至少应该是这样的,嵌套类型是没有意义的,除非您在 一些 使用外部类的方式。例如,它可以是外部类的生成器,也可以是外部类中方法调用的某些参数中使用的枚举。
|
|
|
2
8
公众的 类内的委托定义。 例如,考虑我最喜欢的模式:一个抽象基类,它只能由工厂制造的私有嵌套类扩展:
这不能是公共委托类,因为它引用私有类型!
现在你当然不会这么做了。你会用
因此,嵌套的委托类型现在基本上是为了完整性和向后兼容性而存在的;通常您不会使用它。 |
|
|
3
7
委托不是用一个方法定义类的快捷方式。实际上,它们至少有6个方法(Invoke、BeginInvoke、EndInvoke、GetHashCode、Equals、ToString)。
将委托放入类型中的模式的一个原因是为了避免全局命名空间污染。代表
|