Inner class

//匿名内部类
public class Body{
    interface A{
        public void a();
    }
    interface Heart extends A{
        public void print();
    }
    public static void main(String[] args){
        new Heart(){
            @Override
            public void print() {
                System.out.println("abc");
            }
            @Override
            public void a() {
            }
        }.print();//用一次
    }
}
//私有内部类
public class Body{
    private static int blood = 2;

    public static class Heart{
        public void print(){
            System.out.println(blood);
        }
    }
    public static void main(String[] args){
        Body.Heart heart = new Body.Heart();//
        heart.print();
    }
}
//成员内部类
public class Body {

    private int blood = 0;

    public class Heart{
        private int heartBlood = 1;

        public void print(){
            System.out.println(blood);
            System.out.println(heartBlood);
        }
    }

    public static void main(String[] args){
        Body.Heart heart = new Body().new Heart();//需要首先生成外部类
        heart.print();
    }
}












扫描二维码关注公众号,回复: 2416991 查看本文章






猜你喜欢

转载自blog.csdn.net/qq_28197211/article/details/80945279