Java多态
多态(Polymorphism)按字面的意思就是“多种状态”。在面向对象语言中,接口的多种不同的实现方式即为多态。多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作 。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。在Java中可以理解为允许将子类的应用赋值给父类的引用。
Java实现多态有三个必要条件
继承:在多态中必须存在有继承关系的子类和父类。
重写:子类对父类中某些方法进行重新定义,在调用这些方法时就会调用子类的方法。
向上转型:在多态中需要将子类的引用赋给父类对象,只有这样该引用才能够具备技能调用父类的方法和子类的方法。
多态实例
<p>
class A{
void fun1(){
System.out.println("A fun1");
}
}
class B extends A{
void fun1(){
System.out.println("B fun1");
}
}</p><p>class C extends A{
void fun1(){
System.out.println("C fun1");
}
}
public class Duotai {</p><p> public static void main(String[] args) {
A a = new A();
A b = new B(); //
A c = new C();
a.fun1();
b.fun1();
c.fun1();</p><p> }</p><p>}
</p>