Java的内部类兑现多继承只是个噱头
Java的内部类实现多继承只是个噱头?
不好意思兄弟我只能用这个标题啦。。。
内部类号称实现多继承,弄得好像只有用内部类才能实现多继承似的,实际上呢?
我修改了下这个页面给的例子如下:(http://blog.****.net/BossDarcy/article/details/7066226)
内部类号称实现多继承,弄得好像只有用内部类才能实现多继承似的,实际上呢?
我修改了下这个页面给的例子如下:(http://blog.****.net/BossDarcy/article/details/7066226)
class Consumer {
protected float buyPrice;
protected void buyGoods(){};
}
class Producer {
protected float cost;
protected void produce(){};
}
/**
*Java实现“多继承”
*@author androidyue
*Last Modified:2011-12-13 上午11:00:25
*/
public class InnerClassDemo extends Producer {
public ConsumerBuyer buyer;
public void desribeMySelf(){
System.out.println("使用Java模拟多继承");
this.produce();
this.buyer=new ConsumerBuyer();
this.buyer.buyGoods();
}
public Consumer getConsumer(){
return buyer;
}
@Override
protected void produce() {
this.cost=100f;
System.out.println("我是生产者,我以每件"+this.cost+"RMB的成本生产一件产品,然后以20000元价格对外出售");
}
class ConsumerBuyer extends Consumer{
@Override
protected void buyGoods() {
this.buyPrice=0f;
System.out.println("我是消费者,我以"+this.buyPrice+"RMB 买了一件售价20000元的商品,不信吧,因为我也是生产者!^_^");
}