匿名内部类实现接口

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hbwindy/article/details/51457860

最近在研究回调,发现回调与接口联系十分密切,且通常使用匿名内部类的写法,现在记录一下,有了更深的体会,随时更新。

一个接口A:

public interface InterfaceA {
    public void sayA();
}

另一个接口B:

public interface InterfaceB {
    public void sayB();
}

主方法中:

public class Main {

    public static void main(String args[]) {

        //A写法,就是匿名内部类实现接口的写法,会看得更明白。
        class A implements InterfaceA {
            @Override
            public void sayA() {
                System.out.printf("A.....");
            }
        }
        A a = new A();

        //B写法,等同于A写法,不过更加简洁。乍一看好像new了一个接口出来。
        InterfaceB b = new InterfaceB() {
            @Override
            public void sayB() {
                System.out.printf("B.....");
            }
        };  //must have ; in here.

        a.sayA();
        b.sayB();

    }
}

运行结果:

A.....B.....

猜你喜欢

转载自blog.csdn.net/hbwindy/article/details/51457860
今日推荐