成员内部类定义格式:
修饰符 class 类名称{
修饰符 class 类名称{
}
}
注意:内用外,随意访问;外用内,需要内部类对象。
如何使用内部类? 两种方法:
1.在外部类的方法当中,使用内部类;然后main只是调用外部类的方法【间接】
2.直接方式,公式:
类名称 对象名=new 类名称();
外部类名称.内部类名称 对象名=new 外部类名称().new 内部类名称();
package Neibulei;
public class Body { //外部类
public class Heart{ //成员内部类
//内部类方法
public void beat(){
System.out.println("心脏跳动");
System.out.println("我叫:"+name); //正确写法
}
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private String name;
//外部类方法
public void methodBody(){
new Heart().beat();
}
}
public class DemoInnerClass {
public static void main(String[] args) {
Body body=new Body();
//通过外部类对象,调用外部类方法,里面间接使用内部类
body.methodBody();
//直接方式
Body.Heart body2=new Body().new Heart();
body2.beat();
}
}