设计模式暂时只看到适配器模式,逛“设计模式”版的时候看到了一道题目,拿来练练手。废话不多说,题目如下:
"假设是原始社会,有石头,2块石头互磨可以变成石刀,石刀可以去砍木头,木头被砍成木材,木材可以组成椅子,请你用oo的
思想把这些事物和他们之间的关系表达出来,但是要考虑到以后可能我会增加以下几点:
"1.有可能我还想让石刀去砍椅子,把椅子砍成木材,
2.可能我还想让石头增加关系,例如互相砸,互相摔,而不只是磨,也可以变成石刀,
3也许我又要多添一百种不同的事物,再多添120种不同的关系..."
也就是说我的要求可能是不断变化的,所以你要怎么样设计这个oo的模型,可以让我在实行1,2,3条的时候只做最小的修改....
先上uml图
代码,时间不多回家加注释。