1700475600
1700475601
System.out.println(”––-房地产公司是按这样运行的––-“);
1700475602
1700475603
//先找到我的公司
1700475604
1700475605
HouseCorp houseCorp=new HouseCorp();
1700475606
1700475607
//看我怎么挣钱
1700475608
1700475609
houseCorp.makeMoney();
1700475610
1700475611
System.out.println(”\n”);
1700475612
1700475613
System.out.println(”––-山寨公司是按这样运行的––-“);
1700475614
1700475615
IPodCorp iPodCorp=new IPodCorp();
1700475616
1700475617
iPodCorp.makeMoney();
1700475618
1700475619
}
1700475620
1700475621
}
1700475622
1700475623
确实,只用修改了黑色字体这几句话,服装厂就开始变成山寨iPod生产车间,然后你就看着你的财富在积累。山寨的东西不需要特别的销售渠道(正品到哪里我就到哪里),不需要维修成本(大不了给你换个,你还想怎么样,过了高峰期我就改头换面了,你找谁维修去?投诉?投诉谁呢?),不承担广告成本(正品在打广告,我还需要吗?需要吗?),但是也有犯愁的时候,这是一个山寨工厂,要及时地生产出市场上流行的产品,转型要快,要灵活,今天从生产iPod转为生产MP4,明天再转为生产上网本,这都需要灵活的变化,不要限制得太死!那问题来了,每次我的厂房,我的工人,我的设备都在,不可能每次我换个山寨产品厂子就彻底不要了。这不行,成本忒高了点,那怎么办?
1700475624
1700475625
Thinking,Thinking……I got an idea!(跳跳虎语),既然产品和工厂绑得太死,那我就给你来松松,改变设计,如图29-3所示。
1700475626
1700475627
1700475628
1700475629
1700475630
图29-3 使用快速变化的类图
1700475631
1700475632
公司和产品之间建立关联关系,可以彻底解决以后山寨公司生产产品的问题,工厂想换产品?太容易了!看程序说话,先看Product抽象类,如代码清单29-7所示。
1700475633
1700475634
代码清单29-7 抽象产品类
1700475635
1700475636
public abstract class Product{
1700475637
1700475638
//甭管是什么产品它总要能被生产出来
1700475639
1700475640
public abstract void beProducted();
1700475641
1700475642
//生产出来的东西,一定要销售出去,否则亏本
1700475643
1700475644
public abstract void beSelled();
1700475645
1700475646
}
1700475647
1700475648
简单!忒简单了!House产品类如代码清单29-8所示。
1700475649
[
上一页 ]
[ :1.7004756e+09 ]
[
下一页 ]