一、多态-概念
0、对象的多态性,例如 人是一类,人又分为 男人, 女人,两种形态
(1)、人 张三 = new 张三();
1、多态:可以理解为事物存在的多种体现
(1)、父类的引用,指向了自己的子类对象,也可以叫 父类的引用也可以接收自己的子类对象
(2)、父类的引用也可以接收自己的子类对象
2、多态的前提
(1)、必须是类与类之间有关系,要么继承,要么实现
(2)、存在方法的覆盖
3、多态的好处
(1)、多态的出现大大的提高了程序的扩展性
4、多态的弊端
(1)、提高了扩展性,但是只能使用父类的引用访问父类中的成员。
5、多态的应用
二、转型
- abstract class Animal{
- public abstract void eat();
- }
- class Cat extends Animal{
- public void eat(){
- System.out.println("吃鱼");
- }
- public void catchMouse(){
- System.out.println("抓老鼠");
- }
- }
- class Dog extends Animal{
- public void eat(){
- System.out.println("吃骨头");
- }
- public void kanJia(){
- System.out.println("看家");
- }
- }
- class Pig extends Animal{
- public void eat(){
- System.out.println("吃饲料");
- }
- public void gongDi(){
- System.out.println("拱地");
- }
- }
- public class Demo{
- public static void main(String[] args){
- /*老方式
- Cat c = new Cat();
- c.eat();
- Dog d = new Dog();