Java嵌套类和内部类详解

前端技术 2023/09/02 Java

一、什么是嵌套类及内部类?

    可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:
静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为
内部类(inner)。嵌套类从JDK1.1开始引入。其中inner类又可分为三种:

    其一、在一个类(外部类)中直接定义的内部类;
    其二、在一个方法(外部类的方法)中定义的内部类;
    其三、匿名内部类。

下面,我将说明这几种嵌套类的使用及注意事项。

二、静态嵌套类

    如下所示代码为定义一个静态嵌套类,

复制代码 代码如下:

public class StaticTest {
private static String name = \"javaJohn\";
private String id = \"X001\";

static class Person{
private String address = \"swjtu,chenDu,China\";
public String mail = \"josserchai@yahoo.com\";//内部类公有成员
public void display(){
//System.out.println(id);//不能直接访问外部类的非静态成员
System.out.println(name);//只能直接访问外部类的静态成员
System.out.println(\"Inner \"+address);//访问本内部类成员。
}
}

public void printInfo(){
Person person = new Person();
person.display();

//System.out.println(mail);//不可访问
//System.out.println(address);//不可访问

System.out.println(person.address);//可以访问内部类的私有成员
System.out.println(person.mail);//可以访问内部类的公有成员

}
public static void main(String[] args) {
StaticTest staticTest = new StaticTest();
staticTest.printInfo();
}
}

本文地址:https://www.stayed.cn/item/4282

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。