我什么时候应该创建一个嵌套类? 它是否使外部类的实例化消耗更多资源?

有时我发现某人的代码有嵌套类。

我什么时候应该创建一个嵌套类? 它是否使外部类的实例化消耗更多资源?

先感谢您。

我想我能看出你在问什么。

假设您有A类。在Scenerio One中,此类没有嵌套类。 在Scenerio Two中,此类具有嵌套类AB

在所有其他条件相同*的情况下,A类在Scenrio Two中不会消耗比在Scenerio One中更多的资源。 这是因为A和AB这两个类实际上是两个不同的类。

类的嵌套仅影响类及其成员的范围。 它不会影响类的内存布局。

*如果在Scenerio Two A中也包含AB的实例,那么并非所有事物都是相同的,并且A类可能比Scenerio One中的大。 但是AB类型的成员字段必须与类定义分开定义,因此这是一个非常明显的区别。

这是否回答你的问题?

你可以在这里找到一些好的答案。 当它仅由封闭类使用时,使用嵌套类。

我什么时候应该创建一个嵌套类?

这取决于。

它是否使外部类的实例化消耗更多资源?

这取决于。