定义两个类实现Animal接口。4 .
时间: 2024-02-24 13:56:37 浏览: 93
好的,以下是定义两个类实现Animal接口的示例代码:
```java
public class Dog implements Animal {
@Override
public void speak() {
System.out.println("汪汪");
}
@Override
public void eat() {
System.out.println("狗在吃骨头");
}
}
public class Cat implements Animal {
@Override
public void speak() {
System.out.println("喵喵");
}
@Override
public void eat() {
System.out.println("猫在吃鱼");
}
}
```
这里我们定义了两个类:Dog和Cat,它们都实现了Animal接口。在这两个类中,我们必须实现Animal接口中定义的两个抽象方法speak()和eat()。Dog类的speak()方法输出“汪汪”,eat()方法输出“狗在吃骨头”,而Cat类的speak()方法输出“喵喵”,eat()方法输出“猫在吃鱼”。这样,我们就可以根据不同的动物类型来实现它们的speak()和eat()方法,从而达到多态的目的。
相关问题
5、编写一个接口 Animal,接口中定义 speak0方法,编写两个实现类Cat和Pig分别实现接口Animal,再编写一个测试类实现对象的类型转换。具体要求如下: (1)编写Animal接口,接口中定义speakO方法。 (2)Cat类和Pig类分别实现Animal接口的方法,且在Cat类中定义方法catchMouse).在Pig类中定义方法eat)。 (3)编写测试类(类名以姓名拼音加作业序号命名),在测试类中
创建Cat对象和Pig对象,并将它们转换为Animal对象,调用Animal对象的speakO方法。同时,调用Cat对象的catchMouse方法和Pig对象的eat方法。
Animal.java:
```
public interface Animal {
void speakO();
}
```
Cat.java:
```
public class Cat implements Animal {
@Override
public void speakO() {
System.out.println("我是一只猫,我会喵喵叫。");
}
public void catchMouse() {
System.out.println("我是一只猫,我会抓老鼠。");
}
}
```
Pig.java:
```
public class Pig implements Animal {
@Override
public void speakO() {
System.out.println("我是一只猪,我会哼哼叫。");
}
public void eat() {
System.out.println("我是一只猪,我爱吃饭。");
}
}
```
TestHW5.java:
```
public class TestHW5 {
public static void main(String[] args) {
Animal cat = new Cat();
Animal pig = new Pig();
cat.speakO();
((Cat) cat).catchMouse();
pig.speakO();
((Pig) pig).eat();
}
}
```
运行结果:
```
我是一只猫,我会喵喵叫。
我是一只猫,我会抓老鼠。
我是一只猪,我会哼哼叫。
我是一只猪,我爱吃饭。
```
通过对象的类型转换,我们可以调用Cat对象的catchMouse方法和Pig对象的eat方法,同时也可以调用Animal对象的speakO方法。这就体现了接口的多态性,可以实现不同类之间的互相转换和调用。
定义一个接口Animal,包含一个方法shout( ),返回值类型为void。然后定义两个类Dog和Cat,这两个类需要实现Animal接口,并重写shout( )方法,分别输出“Dog shouting!”和“Cat shouting!”。
首先,我们需要定义一个名为`Animal`的接口,它只包含一个方法`shout()`,这个方法没有返回值,表示它是`void`类型的:
```java
public interface Animal {
void shout();
}
```
接着,我们创建两个实现了`Animal`接口的类:`Dog`和`Cat`。每个类都会重写`shout()`方法,以显示其特定的行为:
```java
public class Dog implements Animal {
@Override
public void shout() {
System.out.println("Dog shouting!");
}
}
public class Cat implements Animal {
@Override
public void shout() {
System.out.println("Cat shouting!");
}
}
```
现在,你可以创建`Dog`和`Cat`的对象并调用它们的`shout()`方法,尽管它们都实现了相同的接口,但是由于方法的重写,会输出相应的动物叫声。
```java
public class Main {
public static void main(String[] args) {
Animal dog = new Dog();
Animal cat = new Cat();
dog.shout(); // 输出 "Dog shouting!"
cat.shout(); // 输出 "Cat shouting!"
}
}
```
阅读全文
相关推荐

















