Java重修笔记 第二十八天 成员内部类、静态内部类

avatar
作者
猴君
阅读量:0
  • 成员内部类

1. 定义:有类名,定义在外部类的成员位置上,本质是一个成员,作用域为整个类体。

2. 成员内部类可以直接访问外部类的所有成员,包括私有的,外部类想要访问成员内部类,需要创建该成员内部类的对象才可进行访问,包括私有的。

3. 成员内部类可以添加任意修饰符,因为他本质是一个成员。

4. 外部其他类可以访问成员内部类,有两种方式:

        (1) 先给外部类分配空间,然后再通过外部类的实例给内部类分配空间

                外部类名.内部类名 = new 外部类名.new 成员内部类名(构造器的参数列表)

        (2) 在外部类中定义一个方法,用来返回成员内部类的对象

                外部类名.内部类名 = new 外部类名.方法名(方法的参数列表)

5. 访问外部类成员时,也要通过“外部类名.this.成员名”的方式去访问、

  • 静态内部类

1. 定义:有类名,定义在外部类的成员位置上,用static修饰,本质是一个静态成员,作用域为整个类体。

2. 静态成员内部类可以添加任意修饰符,因为他本质是一个静态成员。

3. 静态成员内部类只能访问静态成员。静态内部类中的普通方法也只能访问静态属性和方法。

4. 外部其他类可以访问静态内部类,有两种方式:

        (1) 先给外部类分配空间,然后再通过外部类的实例给内部类分配空间(满足访问权限)

                外部类名.内部类名 = new 外部类名.静态内部类名(构造器的参数列表)

        (2) 在外部类中定义一个方法,用来返回静态内部类的对象实例(满足访问权限)

                外部类名.内部类名 = new 外部类名.方法名(方法的参数列表)

5. 访问外部类成员时,要通过“外部类名.成员名”的方式去访问、

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!