问答详情
源自:9-1 Java 中的继承

谁能告诉我,我这个代码为什么下划处报错了

public class HelloWorld {

    public class Animal {

    int age;

    public void eat() {

        System.out.println("吃");

        }

    }


    public class Dog extends Animal {

    }


public static void main(String[] args) {

Dog dog = new Dog();

dog.age = 10;

dog.eat();

}

}

谁能告诉我,我这个代码为什么下划处报错了

提问者:Code_More 2016-01-07 22:11

个回答

  • Its_forever
    2016-01-07 22:41:19
    已采纳

    你这个应该想考的是继承。代码这样就不会报错了

    public class Dog extends Animal {
    	public static void main(String[] args) {
    		
    		Dog dog = new Dog();
    		dog.age = 10;
    		dog.eat();
    	}
    }
    class Animal {
    	int age;
    
    	public void eat() {
    		System.out.println("吃");
    	}
    }


  • 雨中踏步
    2016-02-05 10:52:55

    public class HelloWorld {

        public class Animal {

    这个你用一个   多写了一个  删除一个就行了

  • liu4444
    2016-01-13 17:02:38

    你把代码分开写就行了   别写一起

  • ai睡的熊
    2016-01-07 22:45:32

    Animal a=new Dog();
    改成这个,这个是多态的用法,子类继承父类方法


  • Its_forever
    2016-01-07 22:34:58

    Dog是HelloWorld的内部类。

    需要这样调用

    	HelloWorld hello = new HelloWorld();
    	Dog dog = hello.new Dog();
    	dog.age = 10;
    	dog.eat();