交通灯管理系统

交通灯管理系统

面向对象设计思想:

例题:

1,  两块石头磨成一把石刀,石刀可以砍树,砍成木材,木材做成椅子

用面向对象的思想模拟

如下:

对象有:

           石头:Stone

           石刀:StoneKnife

           木材:Wood

           椅子:Chair

                   两块石头磨成一把刀,则就是一个工厂类,传入两块石头做参数,返回一把石刀

        StoneKnifeFactory

           木材做成椅子也是一个工厂类,将木材作为参数,返回一把椅子

ChairFactory

代码如下:

StoneKnife

public class StoneKnife {

	private Stone s1;
	private Stone s2;

	// 石刀由两块石头磨成
	public StoneKnife(Stone s1, Stone s2) {
		this.s1 = s1;
		this.s2 = s2;
	}

	// 石刀有砍树的功能
	public Wood cutTree() {
		return new Wood();
	}
}

Chair

public class Chair {

	// 椅子由木材做成
	private Wood w;
	public Chair(Wood w) {
		this.w = w;
	}
}
    StoneKnifeFactory

public class StoneKnifeFactory {

	public static StoneKnife creatStoneKnife(Stone s1,Stone s2){
		return new StoneKnife(s1,s2);
	}
}
ChairFactory

public class ChairFactory {

	public static Chair creatChair(Wood w){
		return new Chair(w);
	}
}

模拟流程:


public class TestDemo {

	public static void main(String[] args) {
		// 创建两块石头
		Stone s1 = new Stone();
		Stone s2 = new Stone();
		// 将两块石头磨成一把石刀
		StoneKnife sk = StoneKnifeFactory.creatStoneKnife(s1, s2);
		// 砍一块木材
		Wood w = sk.cutT
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值