首页 理论教育 Java语言程序设计中的内部类及用法

Java语言程序设计中的内部类及用法

时间:2023-10-18 理论教育 版权反馈
【摘要】:本节讲解内部类的问题。根据内部类是否有static修饰,可以将内部类分成静态内部类和非静态内部类。第13行代码说明非静态内部类中是通过“this.”来引用内部类中的实例变量,此时this.也可以省略,如第12行代码所示。第12~13行代码是静态内部类调用本类中的实例变量,第14~15行代码是静态内部类调用本类中的静态变量。测试类代码如下:第4行代码演示了在其他类中如何创建静态内部类的对象。

Java语言程序设计中的内部类及用法

类的定义包括类的声明和类体两部分。在类体中出现的叫作类的成员。类的成员包括变量、方法、构造器、内部类。本节讲解内部类的问题。

一个类在另一个类的内部定义,这个定义在其他类体中的类称为内部类,包含内部类的类叫外部类。根据内部类是否有static修饰,可以将内部类分成静态内部类和非静态内部类。在这一节的学习中,我们要学会回答三个问题:第一,非静态内部类是否可以声明实例变量和静态变量?第二,非静态内部类中如何引用外部类的实例成员和静态成员?第三,如何创建非静态内部类对象?

非静态内部类的使用示例代码如下:

第5~15行代码定义了非静态内部类,其中第7行代码编译出错,说明非静态内部类中不能声明静态变量,同样也不能声明静态方法。

第9行代码说明在非静态内部类中是通过“外部类名.this.”引用外部类的实例变量,第11行代码说明在非静态内部类中是通过“外部类.”来引用外部类的静态变量,此时“外部类.”也可以省略,如第10行代码。第13行代码说明非静态内部类中是通过“this.”来引用内部类中的实例变量,此时this.也可以省略,如第12行代码所示。

测试类代码如下:

第4行代码演示了在其他类中如何创建非静态内部类的对象。(www.xing528.com)

关于静态内部类我们也要学会回答三个问题:第一,静态内部类是否可以声明实例变量和静态变量?第二,静态内部类中如何引用外部类的实例成员和静态成员?第三,如何创建静态内部类对象?通过一个例子来了解下静态内部类的知识。

静态内部类的示例代码如下:

第5~17行代码定义了静态内部类,第6~7行代码说明在静态内部类中可以定义实例变量和静态变量。第9行代码说明静态内部类中只能通过“外部类对象”来调用该外部类的实例变量,第11行代码说明静态内部类中通过“外部类名.”来调用外部类的静态变量,而此时“外部类名.”不能省略。第12~13行代码是静态内部类调用本类中的实例变量,第14~15行代码是静态内部类调用本类中的静态变量。

测试类代码如下:

第4行代码演示了在其他类中如何创建静态内部类的对象。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈