内部类

内部类分为:成员内部类,局部内部类,静态内部类,匿名内部类

允许在一个类的内部定义类,这样的类成称作内部类

成员内部类:在一个类中除了可以定义成员变量,成员方法,还可以定义类,这样的类被成为成员内部类

格式:

class  外部类{

class 内部类{

}

}

访问特点:内部类可以直接访问外部类的成员,包括私有成员

外部类要访问内部类的成员必须要建立内部类的对象

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

 

局部内部类:

定义在某个局部范围中的类,其有效范围只限于方法内部

public class Outer{

int outer  = 10;

public void outer(){

System.out.println("我是外部")

}

public void aaa(){

class Inner{

int inner = 20;

public void inner(){

System.out.println("我是内部类")

}

}

}

}

 


只需要创建外部类对象,调用所属方法即可访问局部内部类

静态内部类:

使用static关键字修饰成员内部类

静态内部类 中只能访问外部类的静态成员,同时通过外部类访问静态内部类成员时,可以跳过外部类从而直接通过内部类访问静态内部类成员

格式 :

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

 

匿名内部类:

匿名内部类其实就是没有名称的内部类

一个接口的实现类作为方法参数传入,而是直接通过匿名内部类的形式传入一个接口类型参数,在你咪给你内部类中可以直接完成方法的实现

new 父类名(){

public void method(){

System。out。println(“程序执行语句”)

}

}

posted @ 2022-06-23 14:47  ja不会va  阅读(51)  评论(0编辑  收藏  举报