[Java基础]习题//匿名内部类[通俗易懂]

(72) 2024-05-25 18:01:03

需求:

        1.接口IPlay中有一个方法playGame(),在测试类中如何调用该方法?

​ 要求1.创建子类实现接口的方式实现 要求2:用匿名内部类实现

        2.一个抽象类Fun中有一个抽象方法 fun() , 在测试类中如何调用该方法?

​ 要求1.创建子类继承抽象类的方式实现 要求2:用匿名内部类实现

定义IPlay接口

public interface IPlay {
    public abstract void playGame();
}

定义抽象类Fun

public abstract class Fun {
    public abstract void fun();
}

定义测试类

//实现IPlay接口,并重写方法
class game implements IPlay{
    @Override
    public void playGame(){
        System.out.println("原始人,起洞!!!");
    }
}

//继承Fun类,并重写方法
class le extends Fun{
    @Override
    public void fun(){
        System.out.println("乐");
    }
}


public class Test1{
    public static void main(String[] args){
        
        //用创建对象的方式调用
        game g = new game();
        g.playGame();
        
        //用匿名内部类的方式调用
        new IPlay(){
            @Override
            public void playGame(){
                System.out.println("崩三,起洞!!!");
            }
        }.playGame();//这里使用了链式编程

        
        le l = new le();
        l.fun();

        Fun f = new Fun(){
            @Override
            public void fun(){
                System.out.println("乐死我了");
            }
        };
        f.fun();
    }
}

运行结果:

[Java基础]习题//匿名内部类[通俗易懂] (https://mushiming.com/)  第1张

THE END

发表回复