Java多态之父类调用子类的方法

package test1;

Java多态之父类调用子类的方法

//多态的体现import javax.print.attribute.standard.RequestingUserName;import java.util.Scanner;public class testfather {public static void main(String[] args){Animal a  = new fish();   //父类对象被赋以子类类型/*Animal a;fish b = new fish b;a= b;      //向上转型,不丢失精度a.talk();*/       //可达到相同效果a.talk();      //fish覆写animal talk方法Animal c = new bird();//C.talk2();    //不能实现,因为animal中没有此方法,必须向下转型   bird b = (bird)c;    //如果不进行转换,父类无法看到子类新扩充的方法   b.talk2();}}class Animal{public void talk()    //如果父类方法不想被覆写,可改为public static void talk(){System.out.println("walk");}}class fish extends Animal{public void talk(){System.out.println("swim");}}class bird extends Animal{public void talk(){System.out.println("fly");}public void talk2()//父类中没有此方法,调用必须进行强制转换,向下转型。{System.out.println("i am a bird");}}

以上就是Java多态之父类调用子类的方法的详细内容,更多请关注其它相关文章!

人生就是要感受美丽的善良的,丑恶的病态的。

Java多态之父类调用子类的方法

相关文章:

你感兴趣的文章:

标签云: