什么是内部类?成员内部类、静态内部类、局部内部类和匿名内部类的区别及作用?

什么是内部类?成员内部类、静态内部类、局部内部类和匿名内部类的区别及作用?_第1张图片

目录

 成员内部类:

局部内部类:

匿名内部类:

 静态内部类:


 

 成员内部类:

存在于某个类的内部,与全局属性或者方法同级的内部类就是成员内部类。

给个例子就是:

什么是内部类?成员内部类、静态内部类、局部内部类和匿名内部类的区别及作用?_第2张图片

 成员内部类的特点就是:

1.可以用外部类的成员属性和成员方法(包括静态的和私有的)

2.成员内部类可以有public\private\protected以及默认访问权限

局部内部类:

类似与套娃一样,它位于方法的外部方法的内部,类似于:

什么是内部类?成员内部类、静态内部类、局部内部类和匿名内部类的区别及作用?_第3张图片

 局部内部类:是定义在一个方法或者一个作用域里面的类。它与成员内部类的区别在于局部内部类的访问仅在于方法内或者作用域内。

不能有private、public、protected和static等修饰符,与局部变量类似

匿名内部类:

什么是内部类?成员内部类、静态内部类、局部内部类和匿名内部类的区别及作用?_第4张图片

 静态内部类:

静态内部类:在成员内部类的基础上加上一个static关键字就是静态内部类。

什么是内部类?成员内部类、静态内部类、局部内部类和匿名内部类的区别及作用?_第5张图片

静态内部类的特点:

1、不需要依赖外部类。
2、不能使用外部类的非静态属性和方法。

你可能感兴趣的:(Java,java,开发语言)