package cn.tedu.inclass;
public class Test1_InClass {
public static void main(String[] args) {
//new A().new B().sleep();//当要调用的方法是普通方法和内部类是非静态时,可以通过 - 外部类对象.内部类对象.普通方法
new A.B().sleep();//当要调用的方法是普通方法和内部类都是静态时,可以通过 - new(类名.静态内部类名).普通方法
A.B.test();//当要调用的方法和内部类都是静态时,可以通过 - 外部类名.静态内部类名.静态方法
}
}
class A{//外部类
public void eat(){
System.out.println("A在吃饭");
}
public void test(){
//外部类A无法直接通过方法名调用内部类B的sleep();
new B().sleep();//外部类A可以通过创建内部类B的实例对象调用内部类B的sleep();
}
static class B{//内部类
public void sleep(){
System.out.println("B在睡觉");
}
public static void test(){
//eat();//内部类可以直接通过方法名调用外部类A的eat()
}
}
}
java 内部类和静态内部类/静态内部类的三种创建方法
最新推荐文章于 2021-02-16 06:57:59 发布