内部类的概念:
如果一个事物的内部包含另外一个事物,那么这就是一个类包含另一个类。
例如:身体和心脏的关系 ;汽车和发动机的关系。
分类:
1、成员内部类
2、局部内部类(包含匿名内部类)
注意:内用外,随机访问;外用内,需要内部类对象。
public class Body {
//外部类
public class Heart{
//内部类
//内部类方法
public void methodHeart() {
System.out.println("内部方法");
System.out.println("我的名字是"+name);
}
}
//外部类成员变量
private String name;
//外部类方法
public void methodBody() {
System.out.println("外部类方法");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
内部类的同名变量访问:
public class Outer {
//外部类
int num = 10; //外部类成员变量
public class Inner{
//内部类
int num = 20; //内部类成员变量
public void methodInner() {
//内部类方法
int num = 30; //内部类方法的局部变量
System.out.println(num); // 30 内部类的局部变量 就近原则
System.out.println(this.num); // 20 内部类的成员变量
System.out.println(Outer.this.num); //10 外部类的成员变量
}
}
}
public class MainTest {
public static void main(String[] args)