【学习笔记14】java面向对象-成员内部类、局部内部类
来源:互联网 发布:世界杯小组抽签软件 编辑:程序博客网 时间:2024/05/25 13:32
内部类:一个类定义在另外一个类的内部,那么该类就称作为内部类。
内部类的类别:
1. 成员内部类:
成员内部类的访问方式:
方式一:在外部类提供一个方法创建内部类的对象进行访问。
方式二:在其他类直接创建内部类的对象。 格式:外部类.内部类 变量名 = new 外部类().new 内部类();
注意: 如果是一个静态内部类,那么在其他类创建 的格式:
外部类.内部类 变量名 = new 外部类.内部类();
内部类的应用场景: 我们在描述A事物的时候,发现描述的A事物内部还存在另外一个比较复杂的事物B时候,而且这个比较复杂事物B还需要访问A事物的属性等数据,那么这时候我们就可以使用内部类描述B事物。
比如: 人--->心脏
class 人{
血
氧气
}
内部类要注意的细节:
1. 如果外部类与内部类存在同名的成员变量时,在内部类中默认情况下是访问内部类的成员变量。
可以通过"外部类.this.成员变量名" 指定访问外部类的 成员。
2. 私有的成员内部类只能在外部类提供一个方法创建内部类的对象进行访问,不能在其他类创建对象了。
内部类的class文件名: 外部类$内部类。
命名好处:便于区分该class文件是属于哪个外部类的。
内部类的类别:
1. 成员内部类:
成员内部类的访问方式:
方式一:在外部类提供一个方法创建内部类的对象进行访问。
方式二:在其他类直接创建内部类的对象。 格式:外部类.内部类 变量名 = new 外部类().new 内部类();
注意: 如果是一个静态内部类,那么在其他类创建 的格式:
外部类.内部类 变量名 = new 外部类.内部类();
内部类的应用场景: 我们在描述A事物的时候,发现描述的A事物内部还存在另外一个比较复杂的事物B时候,而且这个比较复杂事物B还需要访问A事物的属性等数据,那么这时候我们就可以使用内部类描述B事物。
比如: 人--->心脏
class 人{
血
氧气
等....
}
}
内部类要注意的细节:
1. 如果外部类与内部类存在同名的成员变量时,在内部类中默认情况下是访问内部类的成员变量。
可以通过"外部类.this.成员变量名" 指定访问外部类的 成员。
2. 私有的成员内部类只能在外部类提供一个方法创建内部类的对象进行访问,不能在其他类创建对象了。
3. 成员内部类一旦出现了静态的成员,那么该类也必须 使用static修饰。
2. 局部内部类: 在一个类的方法内部定义另外一个类,那么另外一个类就称作为局部内部类。
局部内部类要注意的细节:
1. 如果局部 内部类访问了一个局部变量,那么该局部变量必须使用final修饰。
0 0
- 【学习笔记14】java面向对象-成员内部类、局部内部类
- java 成员内部类 局部内部类,匿名内部类
- JAVA面向对象-----局部内部类
- Java 内部类(成员内部类、局部内部类、静态内部类和匿名内部类)
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、局部内部类、静态内部类、匿名内部类)
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- 面向对象高级特性===Java静态内部类、匿名内部类、成员式内部类和局部内部类
- Java学习笔记之局部内部类
- Java静态内部类、匿名内部类、成员式内部类和局部内部类
- java成员内部类、局部内部类、静态内部类和匿名内部类
- Java静态内部类、匿名内部类、成员式内部类和局部内部类
- java 内部类分为成员内部类,局部内部类,匿名内部类,
- Java静态内部类、匿名内部类、成员式内部类和局部内部类
- java个人学习笔记13(Object+内部类+局部内部类+匿名内部类)
- hello
- IBM开源技术微讲堂
- Mysql数据库优化系列(一)------Mysql服务器优化思路
- JSON(二)---常用的处理方式
- 微信公众号开发--获取请求地址的几种方式
- 【学习笔记14】java面向对象-成员内部类、局部内部类
- unity3D学习笔记
- C语言实现2048
- 外网访问本地本地服务器中的web应用_笔记
- PopUp和Graphics的使用
- 什么?你还不会写jQuery插件
- SpringBoot Day1 快速了解
- convolve and fft
- echart使用angularjs发送请求