java基础概念24-内部类1
一、什么是内部类
在一个类的里面,再定义一个类
二、内部类的使用场景
示例:ArrayList的迭代器。
三、内部类的分类
3-1、成员内部类(了解)
写在成员位置的,属于外部类的成员。
1、成员内部类的定义
注意:
修饰符:public、private、default、protected只能修饰成员变量,不能修饰局部变量!
2、获取成员内部类的对象
方式一:在外部类中编写方法,对外提供内部类的对象。(成员内部类被private修饰)
方式二:直接创建格式:外部类名.内部类名 对象名 = 外部类对象.内部类对象;
示例:Outer.Inner oi = new Outer().new Inner();
3、成员内部类获取外部类的成员变量
Outer.this == 外部类的对象
内部类中,有一个隐藏的对象this,用来记录外部类对象的地址值。
4、小结
3-2、静态内部类(了解)
静态内部类也是成员内部类中的一种。
静态内部类只能访问外部类中的静态变量、静态方法,如果想要访问非静态的需要创建对象。
示例:
1、创建静态内部类对象
外部类名.内部类名 对象名 =new 外部类名.内部类名();
2、调用静态方法的格式
示例: