谁有兴趣研究一下这个题目 (一个java面试的题目)
."我假设是原始社会,有石头,2块石头互磨可以变成石刀,石刀可以去砍木头,木头被砍成木材,木材可以组成椅子,请你用oo的思想把这些事物和他们之间的关系表达出来,但是要考虑到以后可能我会增加以下几点:
"1.有可能我还想让石刀去砍椅子,把椅子砍成木材,2.可能我还想让石头增加关系,例如互相砸,互相摔,而不只是磨,也可以变成石刀,3也许我又要多添一百种不同的事物,再多添120种不同的关系..."
问题点数:20、回复次数:8Top
1 楼rower203(华仔)回复于 2005-08-12 15:04:59 得分 0
^_^Top
2 楼roypan2008(中原侠士(JAVA))回复于 2005-08-12 15:35:49 得分 0
拷,不会,谁会呀
帮帮忙啦Top
3 楼qljsd(我本善良)回复于 2005-08-12 16:18:18 得分 0
marksTop
4 楼tomnetfanfan(哈哈)回复于 2005-08-12 20:19:11 得分 0
20分?Top
5 楼lovelymaomao(小老鼠)回复于 2005-08-12 21:59:16 得分 0
给个 rose2003 的下载连接,我画个图给你..Top
6 楼cozmic(白云出岫醉醉翁)回复于 2005-08-12 22:29:29 得分 0
先mark下,回头想好了,答复你Top
7 楼cozmic(白云出岫醉醉翁)回复于 2005-08-13 10:39:53 得分 20
看看这样子,行不
class 石头{ }
interface 石刀{
木头 砍(木头);}
class 磨石头生产的石刀implements 石刀 {
木头 砍(木头){}}
interface 石刀工厂 {
石刀 石刀工厂();
}
class 磨石头生产石刀工厂 implements 石刀工厂 {
石刀 石刀工厂() {
return new 磨石头生产的石刀();
}
}
-------
interface 木头 {}
class 木板 implements 木头 { }
class 椅子 implemetns 木头 {
private List 木头s = new LinkedList();
public List get木头s() {
return 木头s;
}
public void add木头s(木头[] 木头Array) {
if(木头Array == null) {
return;
}
for(int i = 0; i < 木头Array.length; i++) {
木头s.add(木头Array[i]);
}
}
}
public 木头 组装() { }
}
Top
8 楼bianfu_2008()回复于 2005-08-14 21:01:22 得分 0
好像 逻辑 好强啊。。
楼上 定义 class 石头 ,我觉得很好,interface 石刀 也很好,那么后面为什么不把 木头 也定义为
class 木头呢,或者 abstrct 也不错啊,(这是我个人认为,有点不可理解)。不过我看也都大概就这样子,还有没有高手有更好的建议呢?呵呵。。只求最好啊!~~~Top




