帮我写一个父类是非抽象类子类是抽象类的JAVA例子
时间: 2024-11-03 21:00:53 浏览: 15
在Java中,你可以创建一个非抽象父类和一个抽象子类的例子来展示这种结构。非抽象类通常包含一些具体的行为,而抽象类则包含一些抽象方法(即没有具体实现的方法),它的子类必须实现这些方法。这里是一个简单的例子:
```java
// 定义一个非抽象父类 Animal
public class Animal {
private String name;
// 具体的方法
public void eat() {
System.out.println(name + " is eating.");
}
// 构造函数
public Animal(String name) {
this.name = name;
}
// getter and setter for name
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
// 抽象子类 Mammal,继承自Animal并添加抽象方法
public abstract class Mammal extends Animal {
// 抽象方法
public abstract void milk();
// 其他抽象方法...
}
// 实现Mammal子类的具体行为,如Dog
public class Dog extends Mammal {
@Override
public void milk() {
System.out.println("Dog can't milk.");
}
@Override
public void eat() {
super.eat(); // 调用父类的eat方法
}
}
```
在这个例子中,`Animal`是非抽象类,它有一个具体的行为`eat`。`Mammal`是抽象子类,包含了抽象方法`milk`以及父类的方法。`Dog`作为`Mammal`的子类,实现了`milk`方法。
阅读全文