java多态的实现方式
时间: 2024-06-13 08:08:53 浏览: 16
Java中实现多态主要依靠继承和重写这两个机制。具体来说,可以通过以下两种方式实现多态:
1.向上转型实现多态:将子类对象赋值给父类引用变量,然后通过父类引用变量调用子类重写的方法,实现多态。例如:
```java
class Animal {
public void move() {
System.out.println("动物可以移动");
}
}
class Dog extends Animal {
public void move() {
System.out.println("狗可以跑和走");
}
}
public class TestDog {
public static void main(String[] args) {
Animal animal = new Animal(); // Animal 对象
Animal dog = new Dog(); // Dog 对象
animal.move(); // 执行 Animal 类的方法
dog.move(); // 执行 Dog 类的方法
}
}
```
输出结果为:
```
动物可以移动
狗可以跑和走
```
2.重写实现多态:在父类中定义一个方法,在子类中重写这个方法,然后通过子类对象调用这个方法,实现多态。例如:
```java
class Animal {
public void move() {
System.out.println("动物可以移动");
}
}
class Dog extends Animal {
public void move() {
System.out.println("狗可以跑和走");
}
}
public class TestDog {
public static void main(String[] args) {
Animal animal = new Animal(); // Animal 对象
Dog dog = new Dog(); // Dog 对象
animal.move(); // 执行 Animal 类的方法
dog.move(); // 执行 Dog 类的方法
}
}
```
输出结果为:
```
动物可以移动
狗可以跑和走
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)