c# – 在哪里和如何使用嵌套类?

c# – 在哪里和如何使用嵌套类?,第1张

概述参见英文答案 > Why/when should you use nested classes in .net? Or shouldn’t you?                                    12个 我想,如果一个类只能在另一个类中实例化,所以使用它嵌套在该类中是正确的.我认为这将有助于我们良好的设计.当我看着我的项目时,我几乎从来没有看到这样的嵌套结构.但是如果我尝试 参见英文答案 > Why/when should you use nested classes in .net? Or shouldn’t you?12个
我想,如果一个类只能在另一个类中实例化,所以使用它嵌套在该类中是正确的.我认为这将有助于我们良好的设计.当我看着我的项目时,我几乎从来没有看到这样的嵌套结构.但是如果我尝试嵌套类,所以这个时候我的脑海里出现了另一个问题

我有Board类,移动类,例如ShortCastle,LongCastle,EnPassant,Promote和PIEces,如Pawn,Queen,Rook,Knight等.所以很明显,Board类将实例化PIEce类,PIEce类将实例化Move类.对于一个好的设计,Promote move class应该被嵌套在Pawn中,因为只有pawn才能促进自己.长城和长城应该被嵌套国王,因为只有王可以有这种类型的动作.

尝试将所有PIEce课程放在Board课堂中看起来不错,因为8-9课程将在Board课堂内,真正令人讨厌的一个Board类文件将会变得太大,几乎不可读.我喜欢将每个课程类别保留在另一个课程中文件.好的,我们可以创建部分Board类,但仍然不是很烦人8-9 Partial Board类文件将持有每个类的类?最好不要让它们嵌套吗?与PIEces相同创建另一个部分PIEce文件仅适用于另一个Move类型类?如果嵌套类只占用很小的空间,那么它不会有任何问题,但是如果需要很多方法呢?

解决方法 我认为你对于嵌套类来说太慷慨了.
看看 this嵌套类型的设计指南.

如果满足以下条件,请不要使用嵌套类型:

>类型必须被实例化
客户端代码.如果一个类型有一个public
构造函数,它可能不应该
嵌套背后的理由
指导是如果一个嵌套类型
可以实例化,它表示
该类型有一个地方
图书馆自己.你可以创建
它,使用它,并销毁它没有
使用外部类型.所以呢
不应该嵌套内部类型
不应在外面广泛使用
的外型没有
与外部类型的关系.
>通常引用类型
在客户端代码中声明.

这些作品可能属于一个董事会(PIEce集合作为会员?),但可以并存,而无需.你可能会想重新使用没有片断的主题(主题等),还可以重新使用没有板的位置(位置等).

总结

以上是内存溢出为你收集整理的c# – 在哪里和如何使用嵌套类?全部内容,希望文章能够帮你解决c# – 在哪里和如何使用嵌套类?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1258056.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存