内部类概述

一,定义及应用场景

1.如果一个类定义在另一个类内部,这个类就是内部类。

类的五大成分:成员变量、方法、构造器、内部类、代码块。

2.场景:当一个类的内部,包含了一个完整的事物,且这个事物没有必要单独设计时,就可以把这个事物设计成内部类。

二,内部类有四种形式

(前三个均了解,第四个重点)

1.成员内部类

类中的一个普通成员,类似于普通的成员变量、成员方法。

内部类概述_第1张图片

如何创建对象(格式)

格式:外部类名.内部类名  对象名 =new 外部类(...).内部类(...);

内部类概述_第2张图片

在内部类中如何同时访问多个数据

内部类概述_第3张图片

成员内部类中访问其他成员的特点:

1°成员内部类的实例方法中给,同样可以直接访问外部类的实例成员、静态成员。

2°可以在成员内部类的实例方法中,拿到当前外部类对象,格式为:外部类名.this。

2.静态内部类

(凡是类有的东西,静态内部类都可以有)

如何创建对象

格式:外部类名. 内部类名 对象名 =new 外部类. 内部类(...);

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

访问外部类成员的特点

可以直接访问外部类的静态成员,不可以直接访问外部类的实例成员。

3.局部内部类

4.匿名内部类

1.概述

匿名是指程序员不需要为这个类声明名字。

内部类概述_第4张图片

2.匿名内部类在开发中的使用场景

通常作为一个参数传输给方法

内部类概述_第5张图片

注:蓝色部分为简化代码。

3.匿名内部类的特点

本质就是一个子类,并会立即创建出一个子类对象。

4.匿名内部类的作用

可以更方便地创建出一个子类对象。

你可能感兴趣的:(java)