黑马程序员技术交流社区

标题: 【上海校区】Java学习 内部类 [打印本页]

作者: 不二晨    时间: 2018-6-28 14:20
标题: 【上海校区】Java学习 内部类

内部类特点:

内部类相当于外部类的一个成员,可以访问外部类的所有其他成员

外部类如果想要访问内部类需要创建内部类对象。

如果想要直接访问外部类的内部类中的成员:

如果内部类的成员是静态的,内部类也必须是静态的,此时内部类相当于一个外部类

直接调用:

Outer.Inner.show();

如果仅有内部类是静态的,那么还是需要创建对象的


内部类之所以能够访问外部类的成员 是因为内部类持有外部类的引用     外部类名.this


匿名内部类:

匿名内部类是只使用一次的类,使用完就消失,不会重复使用。

想要创建匿名内部类需要前提:匿名内部类必须继承一个外部类或者实现一个接口。

匿名内部类不能定义构造器,如果想要进行初始化操作可以使用初始化块。

匿名内部类格式:

new 父类(){ 匿名内部类内容 }

如果匿名内部类需要调用多个方法可以创建父类的引用指向匿名对象

这样使用多态的话,匿名内部类中所创建的独有的函数方法就不能通过父类引用调用。

【转载】原文地址:https://blog.csdn.net/goddreamyyh/article/details/80591630



作者: 吴琼老师    时间: 2018-7-5 16:57

作者: 不二晨    时间: 2018-7-12 15:07





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2