黑马程序员技术交流社区
标题:
两个石头磨成一把石刀我的理解方法
[打印本页]
作者:
卢其龙
时间:
2012-1-5 12:16
标题:
两个石头磨成一把石刀我的理解方法
本帖最后由 卢其龙 于 2012-1-10 15:04 编辑
首先在此祝张老师一路走好
-------------------------------------------
两个石头磨成一把石刀,石刀可以砍树,伐成木头,木头可以做成椅子
//这里只写 石头磨成石刀
//我主要感觉有两点 1继承:石刀属于石头(这样有利于以后扩展)
2静态方法:这个在石头里,由于不是石头自身操作,用静态更好.
不知道我理解的对吗?大家有什么看法?
石头
{
public static 石刀 磨 (石头,石头)
{
return 石刀
}
}
石刀 extends 石头
{
public 木头 砍树 (树)
{
木头
}
}
树
{
}
木头 extends 树
{
}
椅子
{
}
入口
{
石刀 小李飞刀 = 石头.磨(石头,石头);
}
作者:
李晓光
时间:
2012-1-5 12:37
{:soso_e114:} , 石刀 继承 石头
木头 继承 树
作者:
刘基军
时间:
2012-1-5 14:57
石头
{
public static 石刀 磨 (石头,石头)
{
return 石头 //-----这边是不是应该为“return 石刀”
}
}
作者:
卢其龙
时间:
2012-1-5 16:24
石头
{
public static 石刀 磨 (石头,石头)
{
return 石头 //-----这边是不是应该为“return 石刀”
}
}
----------------------------------已修改
作者:
wrlqwe
时间:
2012-9-4 15:29
我觉得lz的说法有些不妥,石刀既然是石头的子类,那作为子类的石刀怎么能在父类中生成呢?
与其写石头磨的方法,不如写成石刀的构造方法
石刀
{
private 石刀(){}
public 石刀(石头1,石头2){}
public 木头 砍树(树)
{
return 木头;
}
}
既然是石刀的类生产出石刀的对象,那磨的动作也就等同于石刀的构造过程,如果没有两块石头对象,石刀也不会产生的
这样同理也可以让木头,椅子用这样的方式产生:
new 椅子(new 木头(new 石刀(石头1,石头2).砍树(new 树())));
new Chair(new Wood(
new StoneKnife(stone1,stone2 )
.
cut(new Tree()
)));
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2