创建一个子类 Dog 继承Animal 并实现 Action 接口。
时间: 2024-05-12 19:20:05 浏览: 101
```
public class Dog extends Animal implements Action {
public Dog(String name, int age) {
super(name, age);
}
@Override
public void move() {
System.out.println("Dog " + getName() + " is running.");
}
@Override
public void eat() {
System.out.println("Dog " + getName() + " is eating.");
}
@Override
public void sleep() {
System.out.println("Dog " + getName() + " is sleeping.");
}
@Override
public void play() {
System.out.println("Dog " + getName() + " is playing.");
}
}
```
相关问题
子类dog类继承animal类
在面向对象的设计中,子类 "Dog" 类继承 "Animal" 类是一个常见的模式。这意味着Dog类是从Animal类派生出来的,它会自动获得Animal类的所有公共属性和方法。Animal类可以看作是一个基类,包含了所有生物共享的特性,如生命的基本需求、繁殖能力等。
Dog类可能会增加一些特有的属性,比如狗的品种、颜色、叫声等,以及相关的行为,如奔跑、摇尾巴、叫唤等。通过继承Animal类,Dog类能够避免代码冗余,因为如果Animal类有一个关于喂食的通用方法,所有的子类包括Dog都会拥有这个方法,只需要在Dog类中添加或覆盖需要的特性即可。
举个简单的Java示例:
```java
public class Animal {
protected String diet; // 共享的饮食习惯
public void eat() { // 共享的进食行为
System.out.println("This animal is eating.");
}
}
public class Dog extends Animal {
private String breed; // 狗特有的品种信息
@Override
public void eat() { // 重写eat方法,增加狗的细节
System.out.println("The dog is eating its kibble.");
}
public void bark() { // 狗特有的行为
System.out.println("Woof!");
}
}
```
在这个例子中,Dog类通过`extends Animal`关键字声明继承Animal类,然后可以在Dog类里定义自己特有的行为或属性。
如何在Java中创建一个继承自Animal的子类?
在Java中创建一个继承自`Animal`的子类非常直观,只需要遵循这样的语法:
```java
class 子类名 extends 父类名 {
// 子类特有的属性和方法
// 可能需要重写或覆盖父类的方法
@Override
public void 方法名() {
// 子类的实现
}
// 子类新增的方法
public void 新增方法() {
// ...
}
}
例如,如果你想创建一个名为`Kitten`的猫的子类,你可以这样做:
```java
class Kitten extends Animal {
private int whiskers;
// 重写eat()方法,提供特殊的猫行为
@Override
public void eat() {
System.out.println(name + "正在享受小鱼");
}
// 新增方法,比如玩耍
public void playWithBall() {
System.out.println(name + "正在玩球");
}
}
```
在这个例子中,`Kitten`类继承了`Animal`的所有属性和方法,同时添加了自己的特性和可能覆盖或扩展的父类方法。
阅读全文