[Java] 纯文本查看 复制代码
package com.itheima.exam.time1;
public class Test5 { //Test5为基本测试类
/**
* 如何调用内部内的方法
*/
public static void main(String[] args) {//测试类主方法
/*Person p = new Person();//第一种方法:1.先创建一个外部类对象P
p.show(); //2.调用成员方法show(),然后在show()方法中创建Student对象s,通过s.method()调用内部类中的方法 */
Person.Student ps = new Person().new Student(); //第二种方法:创建内部类对象
ps.method(); //直接调用内部类中的method()方法
//注意:如果内部类被私有,即private class Student{},
//此时第二种方法不能使用,因为私有的内部类不能被直接访问,此时如果需要调用内部类中method()方法只能通过第一种方法.
}
}
class Person { //Person外部类
int a = 10; //Person类的成员变量
class Student { //Student内部类,也可以将其看作是Person类的一个成员.
public void method() { //内部类中的method()方法
System.out.println(a);//可以直接方法外部内的成员变量a
}
}
public void show(){ //Person类的成员方法
Student s = new Student();
s.method();
}
}