2015-10-16 64 views
1

我想知道是否有任何区别创建一个新的文件中的类和声明一个里面的另一个类,它仍然能够从类的外部引用?我想知道,因为这会帮助我的工作更有条理。创建一个类并在另一个类中声明一个类是否有区别?

+1

是的。检查[嵌套类](https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html) – sam

+0

自Q首次发布以来,标记发生了显着变化 – Plutonix

回答

2

Here是嵌套类的完整文档。

如果你想知道何时使用内部类(从link):使用嵌套类

令人信服的理由包括以下内容:

它的逻辑分组类的方式,仅用于一个 的地方:如果一个类只对另一个类有用,那么逻辑上它就是 ,将它嵌入到该类中,并将它们保持在一起。嵌套0​​这样的“帮助类”使他们的包更加简化。

它增加封装:考虑两个顶级类别A和B, 其中B需要访问A的成员,否则将被声明为 私有。通过将B类隐藏在A类中,A的成员可以被宣布为 私有,B可以访问它们。另外,B本身可以从外部隐藏 。

它可以导致更易读和可维护的代码:在顶级类中嵌套小型 类将代码放置在更接近于使用 的地方。

是的,你可以从其他类访问你的内部类。 (阅读约controlling access to members of a class)。

Here你可以找到一个关于如何从类的“外部”访问内部类的例子。

+0

感谢您的解释和文档!这没有被错误标记,是吗?由于它不是专门关于代码的。 –

+0

我认为标签是正确的,这是一个java问题。 @zachwirta –

相关问题