A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

        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();
   
   
   }










}

11 个回复

正序浏览
看了评论,我选择放弃,昨天就给以个哥们看了一长串没注释的代码。。。费死眼睛了
回复 使用道具 举报
我看了第二行就没有往下看,,,你干嘛要把父类的无参构造函数私有化了,,子类继承父类的时候都要调用父类的构造函数的
回复 使用道具 举报
应该写一下注释,太乱啦
回复 使用道具 举报
代码写的真乱
回复 使用道具 举报
看着醉醉的,一个注释都木有~~~
回复 使用道具 举报
佩服看下来的同志。
回复 使用道具 举报
你这貌似有两个问题1:猫类Cat()里面输出的“猪”,猪类Pig()里面输出的是“猫”。
2:父类构造函数权限异常,导致子类无法调用,可以设置为默认、protected、public。
回复 使用道具 举报
哥们不看啥,我都不看你后面了,你父类的无参构造方法是private修饰的,子类无参构造咋办啊,你这似乎还是多态的问题
回复 使用道具 举报
。。。
就看到子类猫 拱白菜了
回复 使用道具 举报
让人看起来瞬间就蒙圈了。希望下楼能给个正解。
回复 使用道具 举报
建议你使用,编辑器当中的代码功能,格式会整齐不少,还带行号。
并且,写程序能写注释的地方尽量写明注释,不然一段时间过后,你自己看起来都很费力。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马