成员内部类编译生成的class文件
成员内部类代码示例
public class Teacher {
//成员变量
private String teacherName;
public Teacher() { }
public Teacher(String teacherName) {
this.teacherName = teacherName;
}
//成员内部类
//可以继承和实现接口
class Inner extends Object implements Cloneable {
private String name;
不能有静态成员
//private static int age = 10;
public Inner(String name) {
this.name = name;
}
public void showTeacherInfo(String name) {
System.out.println("传入 name = " + name);
System.out.println("内部成员变量 name = " + this.name);
System.out.println("外部成员变量 name = " + Teacher.this.teacherName);
}
}
public static void main(String[] args) {
//创建外部类对象
Teacher teacher = new Teacher("形参1");
//通过外部类对象创建内部类对象
Teacher.Inner inner = teacher.new Inner("内部类");
inner.showTeacherInfo("形参");
}
}