学习Java,你需要知道这些——三大特性之多态

多态,顾名思义就是多种状态的意思。简单来说就是同一个接口使用不同的实例来执行不同操作抽象一点:猫和狗都会叫,但是它们叫的声音不一样。
多态的存在必须满足一下条件:

  1. 继承(extends或implements)
  2. 重写(override)
  3. 父类引用子类对象

多态的优点:

  1. 消除类型之间的耦合关系
  2. 可替换性
  3. 可扩充性
  4. 接口性
  5. 灵活性
  6. 简化性
    以下面的代码为例:
public class Animal {

	String color;
	String name;
	public void Call() {
		System.out.println("动物叫");
	}
	public void getName() {
		System.out.println("动物名");
	}
}
class Cat extends Animal{
	public void Call() {
		System.out.println("喵喵喵");
	}
}
class Dog extends Animal{
	public void Call() {
		System.out.println("汪汪汪");
	}
	public static void main(String []args) {
		Animal dog = new Dog();
		Animal cat = new Cat();
		dog.getName();
		dog.Call();
		cat.Call();
	}
}

在这里插入图片描述
可以看到同样的行为Call在不同的对象DogCat有着不同的表达。以上就是我对多态的简单理解。

你可能感兴趣的:(java,#,JavaSE)