这个代码有问题

来源:9-2 Java 中的方法重写

街角疯

2016-06-30 17:04

class Animal{

public int age;

public String name;

public void eat(){

System.out.println("年龄"+age);

System.out.println("有吃东西的能力");

}

}

class Dog extends Animal{

public void eat(){

System.out.println("年龄"+age);

System.out.println("小狗有吃东西的能力");

}

}

public class First {


public void main(String[] args) {

// TODO Auto-generated method stub

Dog dog=new Dog();

dog.age=10;

dog.eat();


}


}

跑出来的结果不是代码中的内容而是其他内容


写回答 关注

7回答

  • qq_唯爱宇_0
    2017-04-12 16:51:20

    必须有main函数才能执行,这三个代码,只有测试代码里有main函数,执行它就可以出结果,然后再执行前两个,结果不变(实际上仍执行的测试代码)。前两个代码根本没有分配运行方式

  • 愉悦混乱
    2016-10-18 01:35:29
    //这是父类代码
    public class Animal{
    
        public int age;
    
        public String name;
    
        public void eat(){
    
            System.out.println("年龄"+age);
    
            System.out.println("有吃东西的能力");
    
        }
    
    }
    
    //这是子类代码
    public class Dog extends Animal{
    
        public void eat(){
    
            System.out.println("年龄"+age);
    
            System.out.println("小狗有吃东西的能力");
    
        }
    
    }
    
    //这是测试代码
    public class First {
    
        //这里不能没有static
        public static void main(String[] args) {
    
        // TODO Auto-generated method stub
    
        Dog dog=new Dog();
    
        dog.age=10;
    
        dog.eat();
    
    
        }
    
    
    }
  • 流浪在北方的鬼
    2016-10-16 14:39:34

    楼上说的道理我都懂,可是题主,你确定真的不是因为main方法中少了static吗?

  • Jsen_
    2016-10-12 14:44:43
    public void main(String[] args) {
    // TODO Auto-generated method stub
    Dog dog=new Dog();
    dog.age=10;
    dog.eat();
    
    } 中少了static 
    
    正确是:
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Dog dog=new Dog();
    dog.age=10;
    dog.eat();
    
    }


  • 12v8
    2016-07-16 16:37:50

    你子类里的方法跟父类中的方法一样可以不用写,因为子类已经继承了父类里边的方法.如果是重写的话,可以写成别的内容,还有你后边那个First类不能在里边写主函数.把first类去掉

  • BlueBlueSkyZ
    2016-07-09 20:07:31

    。。感觉是换行太多..要不就是eclipse左边选错project了吧,执行就是其他文件了

  • 傲娇的小乌鸦
    2016-06-30 17:30:04

     我在eclipse上跑的很正常~  可能是你哪点错了~

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530655 学习 · 6091 问题

查看课程

相似问题