package case2; public class extendsTest { public static void main(String args[]) { // 实例化一个Cat对象,设置属性name和age,调用voice()和eat()方法,再打印出名字和年龄信息 /********* begin *********/ Cat c=new Cat(String name="大花猫",int age=6); c.voice(); c.eat(); /********* end *********/ // 实例化一个Dog对象,设置属性name和age,调用voice()和eat()方法,再打印出名字和年龄信息 /********* begin *********/ Dog g=new Dog(String name="大黑狗",int age=8); g.voice(); g.eat(); /********* end *********/ } } class Animal { /********* begin *********/ private String name; private int age; System.out.println(name+age+"岁"); /********* end *********/ } class Cat extends Animal { // 定义Cat类的voice()和eat()方法 /********* begin *********/ public void voice(){ System.out.println("大花猫喵喵叫"); } public void eat(){ System.out.println("大花猫吃鱼"); } /********* end *********/ } class Dog extends Animal { // 定义Dog类的voice()和eat()方法 /********* begin *********/ public void voice(){ System.out.println("大黑狗汪汪叫"); } public void eat(){ System.out.println("大黑狗吃骨头"); } /********* end *********/ }
时间: 2023-06-15 22:03:14 浏览: 120
实例分析Java中public static void main(String args[])是什么意思
代码存在一些语法错误,需要进行修正:
1. 类 extendsTest 没有继承任何类,应该为 `public class extendsTest extends Animal {`。
2. 实例化对象时,应该先定义变量类型,再进行赋值,如 `String name = "大花猫";`。
3. 在 Animal 类中,应该定义一个构造方法,用于初始化 name 和 age 属性。
4. 在 Animal 类中,应该定义一个方法用于打印出名字和年龄信息。
修正后的代码如下:
```
package case2;
public class extendsTest extends Animal {
public static void main(String args[]) {
// 实例化一个Cat对象,设置属性name和age,调用voice()和eat()方法,再打印出名字和年龄信息
Cat c = new Cat("大花猫", 6);
c.voice();
c.eat();
c.printInfo();
// 实例化一个Dog对象,设置属性name和age,调用voice()和eat()方法,再打印出名字和年龄信息
Dog g = new Dog("大黑狗", 8);
g.voice();
g.eat();
g.printInfo();
}
}
class Animal {
private String name;
private int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public void printInfo() {
System.out.println(name + age + "岁");
}
}
class Cat extends Animal {
public Cat(String name, int age) {
super(name, age);
}
// 定义Cat类的voice()和eat()方法
public void voice() {
System.out.println("大花猫喵喵叫");
}
public void eat() {
System.out.println("大花猫吃鱼");
}
}
class Dog extends Animal {
public Dog(String name, int age) {
super(name, age);
}
// 定义Dog类的voice()和eat()方法
public void voice() {
System.out.println("大黑狗汪汪叫");
}
public void eat() {
System.out.println("大黑狗吃骨头");
}
}
```
运行结果为:
```
大花猫喵喵叫
大花猫吃鱼
大花猫6岁
大黑狗汪汪叫
大黑狗吃骨头
大黑狗8岁
```
阅读全文