用Java解决上面的问题
时间: 2024-11-24 16:40:30 浏览: 9
Java模拟并解决缓存穿透问题
在Java中,你可以通过继承、接口以及泛型等方式来实现多态。这里简单说明:
1. **继承**:Java支持单继承和接口继承。子类可以继承父类的所有属性和方法,并可以在适当的时候重写父类的方法以实现多态。例如:
```java
class Animal { // 父类
public void sound() {
System.out.println("Animal makes a sound");
}
}
class Dog extends Animal { // 子类
@Override
public void sound() {
System.out.println("Dog barks");
}
}
```
这时,创建Dog实例并调用sound方法就会显示"Dog barks"。
2. **接口**:Java接口类似于一种规范,类实现接口后需要提供该接口中声明的所有方法。多态可以通过实现了多个接口的类实现,比如:
```java
interface AnimalSound {
void makeSound();
}
class Cat implements AnimalSound {
@Override
public void makeSound() {
System.out.println("Cat meows");
}
}
public class Main {
public static void main(String[] args) {
AnimalSound cat = new Cat(); // 多态应用
cat.makeSound(); // 输出 "Cat meows"
}
}
```
3. **泛型**:Java泛型允许你在编写通用代码时指定类型的变量,增强了代码的复用性和类型安全性,间接实现了多态。
阅读全文