1.成员内部类:
2.静态内部类:静态内部类不能直接访问外部类的非静态成员,但可以通过new 外部类().成员的方式访问。
3.方法内部类:因为方法内部类不在外部类中使用,所以方法内部类不能使用访问控制类和static修饰符修饰。
4.匿名内部类
//外部类HelloWorld
public class HelloWorld {
// 内部类Inner,类Inner在类HelloWorld的内部
public class Inner{
// 内部类的方法
public void show() {
System.out.println("welcome to imooc!");
}
}
public class Inner1{
// 内部类的方法
public void show() {
System.out.println("welcome to imooc 1!");
}
}
public static void main(String[] args){
// 创建外部类对象
HelloWorld hello = new HelloWorld();
// 创建内部类对象
Inner i = hello.new Inner();
// 调用内部类对象的方法
i.show();
Inner1 i1 = hello.new Inner1();
i1.show();
}
}
2.静态内部类
3.方法内部类
//外部类HelloWorld
public class HelloWorld {
// 内部类Inner,类Inner在类HelloWorld的内部
public class Inner {
// 内部类的方法
public void show() {
System.out.println("welcome to imooc!");
}
}
public class Inner1 {
// 内部类的方法
public void show() {
System.out.println("welcome to imooc 1!");
}
}
public static void main(String[] args) {
// 创建外部类对象
HelloWorld hello = new HelloWorld();
// 创建内部类对象
Inner i = hello.new Inner();
// 调用内部类对象的方法
i.show();
Inner1 i1 = hello.new Inner1();
i1.show();
}
}