java中可以编写类实现接口与将接口的类对象赋值给接口变量吗
时间: 2024-12-15 19:24:48 浏览: 6
在Java中,确实允许编写类去实现接口,这是接口设计的一个重要特性。当你创建一个类,并声明它实现了某个接口,那么这个类就必须提供接口中定义的所有方法的实现。这样做是为了实现接口多态性,即你可以用接口类型的引用来存储实现了该接口的类的对象。
例如:
```java
interface Animal {
void makeSound();
}
class Dog implements Animal {
@Override
public void makeSound() {
System.out.println("汪汪");
}
}
class Cat implements Animal {
@Override
public void makeSound() {
System.out.println("喵喵");
}
}
Animal myPet; // 定义一个接口类型的变量
myPet = new Dog(); // 将Dog对象赋值给Animal类型的引用
myPet.makeSound(); // 输出 "汪汪"
myPet = new Cat(); // 更改引用类型,现在指向Cat对象
myPet.makeSound(); // 输出 "喵喵"
```
阅读全文