内部类(InnerClass)

1.1.1.       类中的内部类

在类里面定义的类称之为内部类( Inner Class ),内部类是外部类的一个成员。
创建内部类对象时必须先创建一个外部类对象,通过一个外部类对象才能创建内部类对象。 Outer.Inner inner = new Outer().new Inner();
内部类可以直接访问外部类的成员,而外部类不能直接访问内部类的成员
内部类中不能定义静态成员。

1.1.2.       方法中的内部类

一个类如果只在某个方法中使用,那么可以在方法中定义。
定义在方法中的类只能在方法中使用,而且使用的代码只能在声明的代码下面
方法中定义的内部类不能访问方法中定义的局部变量,除非这个局部变量被声明为 final 的。
 

   匿名内部类

如果一个类只使用一次,那么可以定义为匿名内部类。
使用 new 类名 (){ 类定义 } 形式声明,先创建一个类,然后根据这个类创建一个对象。
注意创建的类是指定类名的子类,继承于这个类。

       静态内部类

可以使用 static 修饰一个类中的内部类。
静态内部类不用创建外部类对象就可以直接创建对象。 Outer.Inner inner = new Outer.Inner();
静态内部类可以定义静态成员。
静态内部类中不能访问外部非静态成员。

你可能感兴趣的:(内部类,职场,休闲,innerClass)