8.10

静态内部类和局部内部类:

静态内部类:特殊的成员内部类

静态内部类只能访问外部类中的静态变量和静态方法,如果想要访问非静态的需要创建对象。

创建静态内部类对象的格式:    外部类名.内部类名  对象名= new 外部类名.内部类名();

调用非静态方法的格式:    先创建对象,用对象调用

调用静态方法的格式:    外部类名.内部类名.方法名();

可直接调用静态内部类的静态方法,无需创建对象

 

 局部内部类:

1.将内部类定义在方法里面就叫做局部内部类,类似于方法里面的局部变量

2.外界是无法直接使用,需要在方法内部创建对象并使用

3,该类可以直接访问外部类的成员,也可以访问方法内的局部变量。

 

匿名内部类:

匿名内部类本质上就是隐藏了名字的内部类

可以写在成员位置,也可以写在局部位置
格式:
new 类名或者接口名() {       继承/实现

    重写方法;                         方法重写

}                       创建对象

 

使用场景:
当方法的参数是接口或者类时

以接口为例,可以传递这个接口的实现类对象

如果实现类只要使用一次,就可以用匿名内部类简化代码

posted @ 2023-08-12 15:51  suN(小硕)  阅读(39)  评论(0编辑  收藏  举报