匿名内部类的使用

//1.需求: 想使用 Computer 接口,并创建对象
//2.传统方式,是写一个类,实现该接口,并创建对象
//3.类只是使用一次,后面再不使用

原始做法:


/**
 * 创建时间: 2022/4/30
 *
 * @author 尼古拉斯.Cai灯
 */
public class BasicClass {
    public static void main(String[] args) {
        new BigBird().fly();
        new SmallBird().fly();
    }
}
interface Fly{
    void fly();
}

class BigBird implements Fly{
    @Override
    public void fly() {
        System.out.println("大鸟会飞~~~~~");
    }
}

class SmallBird implements Fly{
    @Override
    public void fly() {
        System.out.println("小鸟会飞~~~~~");
    }
}

控制台结果:

大鸟会飞~~~~~
小鸟会飞~~~~~


使用匿名内部类来简化开发

/**
 * 创建时间: 2022/4/30
 *
 * @author 尼古拉斯.Cai灯
 */
public class AnonymousInnerClass {
    public static void main(String[] args) {
        new Fly(){
           @Override
           public void fly() {
               System.out.println("大鸟会飞~~~~~");
           }
       }.fly();

        new Fly(){
            @Override
            public void fly() {
                System.out.println("小鸟会飞~~~~~");
            }
        }.fly();

    }
}

interface Fly{
    void fly();
}

控制台结果:

大鸟会飞~~~~~
小鸟会飞~~~~~

从而实现了代码的简化,这里也只是个引子具体一点的可以看下面的文件
文章链接:JAVA匿名内部类(Anonymous Classes)

视频链接:匿名内部类的本质

posted @ 2022-04-30 14:40  yfs1024  阅读(35)  评论(0)    收藏  举报