多态
多态就是基于继承条件下,具有对象多态(一个人可以是儿子,可以是父亲等),行为多态(都可以跑,但跑的有快有慢)。
特点
1.多态存在方法重写
2.多态编译看左边,运行看右边
3.变量没有多态性
4.多态下不能使用子类的独有功能
好处
多态可以使程序有良好的扩展,并可以对所有类的对象进行通用处理。
- 1. 消除类型之间的耦合关系
- 2. 可替换性
- 3. 可扩充性
- 4. 接口性
- 5. 灵活性
- 6. 简化性
多态存在的三个必要条件
- 继承
- 重写
- 父类引用指向子类对象:Animal myDog = new Dog()
//创建一个父类Animal
class Animal {
void makeSound() {
System.out.println("The animal makes a sound");
}
}
//创建一个子类Dog继承Animal并重写方法makeSound
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("The dog barks");
}
}
class Cat extends Animal {
@Override
void makeSound() {
System.out.println("The cat barks");
}
//多态代码耦合降低,可以将Dog对象直接换为Cat对象
public class PolymorphismExample {
public static void main(String[] args) {
Animal myDog = new Dog(); // 父类引用指向子类对象
myDog.makeSound(); // 输出: The dog barks
}
}
myDog.makeSound()调用的是子类的方法
标签:makeSound,java,子类,void,多态,Dog,Animal,三大 From: https://blog.csdn.net/liuyangzhengwei/article/details/139220890