内部类-成员内部类(普通内部类)

140 阅读1分钟

获取内部类实例对象的方式:

方式一:

Outer.Inner inner = new Outer().new Inner();

方式二:

Outer outer = new Outer();

Outer.Inner inner = outer.new Inner();

方式三: Outer定义一个get方法, getInner获取

内部类注意点:

  1. 内部类在外部使用时,无法直接实例化,必须要借助外部类信息才能实例化。
  2. 内部类访问修饰符可以任意,但是访问范围会受到影响。
  3. 内部类可以直接使用外部类的成员,包括成员属性和成员方法。(如果同名属性,优先使用内部类的)
  4. 可以使用 外部类.this.属性 的方式访问外部类同名的属性。
  5. 外部类访问内部类信息,需要实例化内部类,通过内部实例访问,无法直接访问。
  6. 内部类编译后的class文件命名:外部类$内部类.class