java动物代码汪汪叫
时间: 2024-06-23 10:02:08 浏览: 15
在Java中,我们可以创建一个简单的"动物"抽象类或接口,然后定义一个子类"狗"来实现"汪汪叫"的方法。这是一个简单的例子:
```java
// 定义一个抽象Animal类
abstract class Animal {
public abstract void makeSound();
}
// 定义Dog子类,继承Animal类
class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("汪汪叫");
}
}
public class Main {
public static void main(String[] args) {
// 创建Dog对象并调用makeSound方法
Dog dog = new Dog();
dog.makeSound(); // 输出: 汪汪叫
}
}
```
在这个例子中,`Dog`类实现了`Animal`类中的`makeSound()`方法,当创建`Dog`对象并调用这个方法时,会打印出"汪汪叫"。这就是Java中的多态,即使`dog`是`Animal`类型的引用,但我们可以通过它调用特定于`Dog`的行为。
相关问题
写一段java多态代码
当然,这是一个简单的 Java 多态示例代码:
```java
// 父类 Animal
class Animal {
public void sound() {
System.out.println("动物发出声音");
}
}
// 子类 Dog
class Dog extends Animal {
@Override
public void sound() {
System.out.println("汪汪汪");
}
}
// 子类 Cat
class Cat extends Animal {
@Override
public void sound() {
System.out.println("喵喵喵");
}
}
// 测试类
public class PolymorphismExample {
public static void main(String[] args) {
Animal animal1 = new Dog();
Animal animal2 = new Cat();
animal1.sound(); // 输出:汪汪汪
animal2.sound(); // 输出:喵喵喵
}
}
```
在上面的示例中,Animal 是一个父类,Dog 和 Cat 都是 Animal 的子类。它们都重写了父类的 sound() 方法,以实现各自的声音。在测试类中,我们创建了一个 Dog 对象和一个 Cat 对象,并将它们赋值给 Animal 类型的引用变量。通过调用 sound() 方法,会根据对象的实际类型进行动态绑定,从而输出相应的声音。这就是多态的体现。
java动态多态代码举例
Java中的动态多态是通过继承和方法重写来实现的。下面是一个简单的Java动态多态的代码示例:
```java
class Animal {
public void sound() {
System.out.println("动物发出声音");
}
}
class Dog extends Animal {
@Override
public void sound() {
System.out.println("狗发出汪汪声");
}
}
class Cat extends Animal {
@Override
public void sound() {
System.out.println("猫发出喵喵声");
}
}
public class Main {
public static void main(String[] args) {
Animal animal1 = new Dog();
Animal animal2 = new Cat();
animal1.sound(); // 输出:狗发出汪汪声
animal2.sound(); // 输出:猫发出喵喵声
}
}
```
在上面的代码中,Animal类是一个基类,它有一个sound()方法。Dog和Cat类继承自Animal类,并且分别重写了sound()方法。在Main类中,我们创建了一个Animal类型的引用animal1,并将其指向一个Dog对象;同时创建了一个Animal类型的引用animal2,并将其指向一个Cat对象。当调用animal1.sound()和animal2.sound()时,实际上会根据对象的实际类型来确定调用哪个类的sound()方法,这就是动态多态的体现。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)