【狂神说Java】内部类

内部类的定义

内部类就是在一个类的内部定义了一个类,比如,A类中定义一个B类,那么B类相对于A类来说就称之为内部类,A类相对于B类就是外部类了。

  • 成员内部类:在类下面
  • 静态内部类:在类下面,并且用static修饰
  • 局部内部类:在类的方法里面
  • 匿名内部类
public abstract class Main {
    public static void main(String[] args){
        // 匿名内部类(局部内部类)
        new UserService(){
            @Override
            // 实现接口
            public void run(String name) { 
                System.out.println("Run");         
            }
        };
    }

interface UserService{
    void run(String name);
}
public class Outer {
    private int id = 10;
    public void out(){
        System.out.println("外部类调用");
    }
    // 内部类
    class Inner{
        public void in(){
            System.out.println("内部类调用");
        }
        // 内部类可以获取外部类的私有属性
        public void getId(){
            System.out.println(id);
        }
    }
}

class App{
    public static void main(String[] args) {
        Outer outer = new Outer();
        // 通过外部类实例化内部类
        Outer.Inner inner = outer.new Inner();
    }
}
posted @ 2021-09-09 16:58  Jie7  阅读(40)  评论(0)    收藏  举报