Java-内部类

版权声明:本文为博主原创文章,转载请注明出处 https://blog.csdn.net/HughGilbert/article/details/81283389

最近使用到了内部类,看了下Java的参考文档,理解了为什么要使用内部类,https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html

Java对Nested Classes的定义(Nested Classes)

  • java允许在类的内部再声明一个类,如下代码所示:
class OuterClass {
    ...
    class NestedClass {
        ...
    }
}
  • Nested Classes 有两类
    • 声明中包含static关键字的nested classes,是 static nested classes
    • 声明中不包含static关键字的nested classes, 是 inner classes

为什么要使用内部类

  • 内部类的出现把一系列只在一个地方被调用的类做了逻辑上的划分。
  • 内部类的出现增强了类的封装特性,应用场景主要是:有两个类A和B,B能够访问A的任何成员变量和方法,包括private属性的,而A无法访问B中的成员变量
  • 增加代码的可独性:Nesting small classes within top-level classes places the code closer to where it is used.

猜你喜欢

转载自blog.csdn.net/HughGilbert/article/details/81283389