多态

来源:互联网 发布:第三方微信软件 编辑:程序博客网 时间:2024/06/05 07:41
一种行为的多种体现形态父类引用=子类对象父类 a=new 子类()通过父类调用子类方法

类/抽象类 的多态

 一个父类作为方法的形参,-------方法内调用子类或本类方法,  可以传入该类的对象或子类的对象  一个父类作为方法的返回类型,可以返回该类的对象,子类的对象缺点:不能调用子类特有的行为,只能调用子父类共有的行为解决:向下转型 即可以调用子类的特有的行为  Anmial an=new Cat();----向上转型  Cat c=(Anmial)an;-------向下转型

多态的执行

 编译看左边,运行看右边Instanceof A instanceof B---------A是B类的对象或B类子类的对象判断对象an指向的 是否是Cat类Anmial an;If(an instanceof Cat){Cat c=(Cat)an;c.cat类特有的方法 }

接口的多态

接口 = 接口实现类对象接口作为方法的形参(有这一特性的类)------方法内调用接口的方法可以传入该接口的实现类对象接口作为方法的返回类型  返回接口实现类对象