解析JavaSe的内部类
297
2022-07-23
目录1、成员内部类2、静态内部类3、方法内部类4、匿名内部类总结
1、成员内部类
内部类与外部类的关系
a.成员内部类的创建需要依赖于外部类对象-(成员方法必须通过对象调用),在没有外部类实例之前无法创建成员内部类对象
b.内部类与外部类相对独立,不是is a 的关系(发动机-汽车)
c.私有属性的互相访问,内部类可以直接访问外部类,而外部类访问内部类需要内部类的对象来访问
d.创建内部类的语法
1.在外部类内部创建内部类对象(Inner inner = new Inner())
2.在外部类外部创建内部类对象,外部类.内部类 inner = new Outter().new Inner();
e.在内部类内部使用隐藏的外部类对象(隐藏的this)
成员内部类:类比成员方法,不能拥有静态域但是可以访问外部类的静态域
2、静态内部类
定义在外部类的内部,使用static修饰,类比静态方法,静态内部类不需要外部类对象产生就能使用,不能访问外部类的成员域,但能访问静态域
静态内部类的创建语法:
1.外部类内部:与成员内部类一样
2.外部类外部:StaticInnerClass.Inner inner = new StaticInnerClass.Inner();
3、方法内部类
定dVgTWm义在方法内部:类比局部变量
a.对外部完全隐藏,因此方法内部类不能有任何访问修饰符
b.方法内部类没有访问形参是,这个形参是可以在方法中随意修改的,一旦方法内部类中使用了形参,这个形参必须http://被声明为final。
4、匿名内部类
a.必须继承一个抽象类或者实现一个接口
b.没有构造方法
总结
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~