水果都能被榨成汁,在现实生活中,我们需要一个榨汁机,
* 往榨汁机中的装什么水果就被榨成什么果汁,请根据描述设计一个程序
分析:
* 1.定义一个接口Fruit(水果接口),其中定义一个toJuice()(变成果汁方法)
2.定义一个实现类Apple(苹果类),实现Fruit接口重写toJuice()方法,输出内容为"苹果变成苹果汁儿"
3.定义一个实现类Banana(香蕉类),实现Fruit接口重写toJuice()方法,输出内容为"香蕉变成香蕉牛奶汁儿"
所以调用zhaZhi方法传递Fruit接口类型,方法体直接调用toJuice()方法,此处为多态,传递那个水果对象
Fruit就指向那个水果对象,就会调用那个水果对象重写后的方法
public class Test {
public static void main(String[] args) {
//创建榨汁机对象
ZhaZhiJi zzj=new ZhaZhiJi();
//创建苹果对象
Apple a=new Apple();
//创建香蕉对象
Banana b=new Banana();
zzj.ZhaZhiJi(a);
zzj.ZhaZhiJi(b);
}
}
public interface Fruit {
public abstract void toJuice();
}
public class Apple implements Fruit {
@Override
public void toJuice() {
// TODO Auto-generated method stub
System.out.println("苹果汁");
}
}
public class Banana implements Fruit {
@Override
public void toJuice() {
// TODO Auto-generated method stub
System.out.println("香蕉汁");
}
}
public class ZhaZhiJi {
public void ZhaZhiJi(Fruit f) {
System.out.println("榨汁机开始工作");
f.toJuice();
}
}