class Outer
{
public class Inner1 //非静态的内部类
{
void show1()
{
System.out.println(" outer inner1 show1...");
}
}
static class Inner2 //静态的内部类相当于一个外部类
{
void show2()
{
System.out.println(" outer inner2 show3...");
}
static void show3() //静态内部类中的静态方法
{
System.out.println(" outer inner2 show3...");
}
}
}
class Demo
{
public static void main(String[] args)
{
/***************** 1.非静态内部类的访问方式*************************/
/** 非静态类中的非静态内部类需要创建对象才可以调用其成语函数
* 所以先创建Outer的对象,然后在其内部创建Inner1的对象
*/
Outer.Inner1 in1 = new Outer().new Inner1();
in1.show1();
/***************** 2.静态内部类的访问方式***************************/
/** 非静态类中的静态内部类不需要创建Outer对象,但是由于静态内部类中的成员函数是非静态的
* 所以该静态类相当于一个外部类,
*/
Outer.Inner2 in2 = new Outer.Inner2();
in2.show2();
/***************** 3.静态内部类中的静态类的访问方式*****************/
/** 非静态类中的静态内部类不需要创建Outer对象,但是由于静态内部类中的成员函数非静态的
*/
Outer.Inner2.show3();
}
}
Java中的内部类
最新推荐文章于 2024-04-25 12:25:03 发布