public interface Fruit { void makeJuice(); }

public class Apple implements Fruit { @Override public void makeJuice() { System.out.println("流出苹果汁"); } }

public class Orange implements Fruit { @Override public void makeJuice() { System.out.println("流出橙汁"); } }

public class Banana implements Fruit { @Override public void makeJuice() { System.out.println("流出香蕉酱"); } }

public class JuiceMachine { public void makeJuice(Fruit fruit) { fruit.makeJuice(); } }

public class Main { public static void main(String[] args) { JuiceMachine juiceMachine = new JuiceMachine();

    Fruit apple = new Apple();
    juiceMachine.makeJuice(apple); // 输出:流出苹果汁
    
    Fruit orange = new Orange();
    juiceMachine.makeJuice(orange); // 输出:流出橙汁
    
    Fruit banana = new Banana();
    juiceMachine.makeJuice(banana); // 输出:流出香蕉酱
}
定义榨汁机JuiceMachine 有榨汁方法makeJuice传入相应的水果。如果传入的是Apple 输出 流出苹果汁传入的是Orange 输出 流出橙汁传入的是Banana 输出 流出香蕉酱使用接口多态覆盖java实现

原文地址: http://www.cveoy.top/t/topic/ibRL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录