内部类相关注意事项
来源:互联网 发布:dts播放器 for mac 编辑:程序博客网 时间:2024/05/16 14:46
这里首先写一下内部类的定义和作用
把一个类放在另一个类的内部定义,这个定义在其他类内部的类就被称为内部类(有的地方也叫嵌套类)
内部类的作用:
1.提供了很好的封装性,可以吧内部类隐藏在外部类之内,不允许同一个包中的其他类来刚问该类。例如Cow类内部定义了CowLeg类,CowLeg类只有在Cow类中才有效,离开了Cow类就没有任何意义了。所以不允许其他的类访问内部类
2.内部类可以直接访问外部类的私有成员,因为内部类被当成其外部类的成员。同一类的成员之间可以互相访问,但是外部类不能访问内部类的实现细节,如成员变量。
注意:当非静态内部类的某个方法访问成员变量的时候,系统优先在该方法内使用该变量,如果存在就是用该变量,不过不存在就在该内部类中查找是否存在该名字的成员变量,如果存在就使用,如果不存在就就在该外部类中查找是否存在改名字的变量。如果存在就是用,如果不存在继续在该外部类的父类中查找是否又改名的变量,如果有就访问,没有就编译报错。
还应该注意,内部类可以访问外部类包括private的成员变量或方法,但是子类不能访问父类中的private成员变量或方法,因为父类中的成员变量或方法在子类中是隐藏的!
3.匿名内部类适合于创建那些只需要使用一次的类。
非静态内部类对象和外部类对象的类关系:
非静态内部类必须寄生在外部类对象里,而外部类对象则不一定有非静态内部类寄生于其中。如果静态内部类存在的时候,那么它所寄生的外部类必然存在。但是,外部类对象存在时,外部类对象里不一定寄生了非静态内部类。因此:外部类对象访问非静态内部类成员是,可能非静态普通内部类根本不存在!而非静态内部类对象访问外部类成员时,外部类对象一定存在。
- 内部类相关注意事项
- Java 内部类注意事项
- java内部类注意事项
- java内部类相关
- 内部类相关总结
- 内部类相关
- 内部类相关
- 内部类相关2
- 内部类相关
- Java 内部类相关
- 内部类相关知识
- 内部类相关知识点
- 内部类使用及注意事项
- 内部类注意事项: 内部类定义在局部时:
- 内部类的相关特性
- broadcast receiver 作为内部类注意事项
- java匿名内部类的使用注意事项
- android -广播是内部类注册注意事项
- collection接口介绍
- 数据库之!= OR <>
- 【MTK】iwpriv命令说明
- Spring MVC 搭建
- 2.1.1微信小程序视图容器 view
- 内部类相关注意事项
- Centos配置国内yum源
- 工作休息时间,保健运动
- 关于Java代码块的小小细节
- 有关strcpy与strlen的实现
- php window环境下扩展memcached实现页面缓存
- LeetCode 73. Set Matrix Zeroes
- markdown使用说明
- 2.1.2微信小程序可滚动视图区域 scroll-view