黑马程序员技术交流社区
标题:
各位大神帮我看看下面这段代码,到底是哪里的问题??谢谢了
[打印本页]
作者:
a546036242
时间:
2015-7-18 19:27
标题:
各位大神帮我看看下面这段代码,到底是哪里的问题??谢谢了
class Animal{
private Animal(){}
public void eat(){
System.out.println("动物吃饭");
}
public void sleep(){
System.out.println("动物睡觉");
}
}
class Dog extends Animal{
public void eat(){
System.out.println("狗吃肉");
}
public void sleep(){
System.out.println("狗站着睡觉");
}
}
class Pig extends Animal{
public void eat(){
System.out.println("猫吃鱼");
}
public void sleep(){
System.out.println("猫趴着睡觉");
}
}
class Cat extends Animal{
public void eat(){
System.out.println("猪拱白菜");
}
public void sleep(){
System.out.println("猪侧着睡觉");
}
}
class AnimalTool{
AnimalTool(){}
public static void operate(Animal c){
c.eat();
c.sleep();
}
}
class AnimalTest{
public static void main(String[] args){
Dog c1=new Dog();
Dog c2=new Dog();
Dog c3=new Dog();
c1.eat();
c1.sleep();
c2.eat();
c2.sleep();
c3.eat();
c3.sleep();
System.out.println("--------------------------------");
Pig s1=new Pig();
Pig s2=new Pig();
Pig s3=new Pig();
s1.eat();
s1.sleep();
s2.eat();
s2.sleep();
s3.eat();
s3.sleep();
System.out.println("--------------------------------");
Cat n1=new Cat();
Cat n2=new Cat();
Cat n3=new Cat();
n1.eat();
n1.sleep();
n2.eat();
n2.sleep();
n3.eat();
n3.sleep();
System.out.println("--------------------------------");
AnimalTool.operate(c1);
AnimalTool.operate(c2);
AnimalTool.operate(c3);
AnimalTool.operate(s1);
AnimalTool.operate(s2);
AnimalTool.operate(s3);
AnimalTool.operate(n1);
AnimalTool.operate(n2);
AnimalTool.operate(n3);
System.out.println("--------------------------------");
AnimalTool a=new AnimalTool();
a.operate(c1);
System.out.println("--------------------------------");
Animal cc=new Animal();
cc.eat();
cc.sleep();
}
}
作者:
李文思
时间:
2015-7-18 19:55
建议你使用,编辑器当中的代码功能,格式会整齐不少,还带行号。
并且,写程序能写注释的地方尽量写明注释,不然一段时间过后,你自己看起来都很费力。
作者:
gongyanfa123
时间:
2015-7-18 20:36
让人看起来瞬间就蒙圈了。希望下楼能给个正解。
作者:
Haunis
时间:
2015-7-18 22:37
。。。
就看到子类猫 拱白菜了
作者:
辉大大
时间:
2015-7-18 23:29
哥们不看啥,我都不看你后面了,你父类的无参构造方法是private修饰的,子类无参构造咋办啊,你这似乎还是多态的问题
作者:
softzhang
时间:
2015-7-19 00:08
你这貌似有两个问题1:猫类Cat()里面输出的“猪”,猪类Pig()里面输出的是“猫”。
2:父类构造函数权限异常,导致子类无法调用,可以设置为默认、protected、public。
作者:
不怕黑人
时间:
2015-7-19 00:27
佩服看下来的同志。
作者:
T-l-H、小生
时间:
2015-7-19 00:52
看着醉醉的,一个注释都木有~~~
作者:
幸_好
时间:
2015-7-19 04:51
代码写的真乱
作者:
icichacici
时间:
2015-7-19 06:55
应该写一下注释,太乱啦
作者:
帅帅loyal
时间:
2015-7-19 08:42
我看了第二行就没有往下看,,,你干嘛要把父类的无参构造函数私有化了,,子类继承父类的时候都要调用父类的构造函数的
作者:
wing-SF
时间:
2015-7-19 10:39
看了评论,我选择放弃,昨天就给以个哥们看了一长串没注释的代码。。。费死眼睛了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2