03 多态梳理

2. 多态的定义

事物在运行过程中存在不同的状态

3. 多态的存在有三个前提:

1.要有继承关系 extends
2.子类要重写父类的方法 override
3.父类(接口)的引用指向->子类(实现)的对象

4. 成员特点

点这里

5. 多态的弊端

不能使用子类特有的成员属性和子类特有的成员方法。

6. 代码举例

public class Xiaojie {
    int age = 30;
    static char cup = 'B';
    
    public void service() {
        System.out.println("小姐在服务");
    }
    
    public static void relax() {
        System.out.println("小姐在休息");
    }
    
    public void avoidPolice() {
        System.out.println("小姐在躲警察");
    }
}

public class Waiwei extends Xiaojie{
    int age = 25;
    static char cup = 'D';
    
    @Override
    public void service() {
        System.out.println("外围在服务");
    }
    
    public static void relax() {
        System.out.println("外围在休息");
    }
    
    public void vipService() {
        System.out.println("外围提供VIP服务");
    }
    
    
}


public class Test {
    public static void main(String[] args) {
        Xiaojie wow= new Waiwei();
        wow.service();//重写方法
        wow.relax();//静态方法,不规范
        wow.avoidPolice();//未重写方法,来自子类继承父类的方法
        //wow.vipService();//点不出来,并且报错
        
        System.out.println(wow.age);//左,左
        System.out.println(wow.cup);//静态变量,不规范
        //以上为向上转型
        
        //以下为向下转型
        //目的是访问子类特有变量和方法
        Waiwei ahah = (Waiwei)wow;
        ahah.service();
        ahah.relax();
        ahah.vipService();
        ahah.avoidPolice();//子类继承父类的方法
        System.out.println(ahah.age);
        System.out.println(ahah.cup);
        
    }
}
==================================
外围在服务
小姐在休息
小姐在躲警察
30
B
外围在服务
外围在休息
外围提供VIP服务
小姐在躲警察
25
D
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 整理来自互联网 1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具...
    Ncompass阅读 1,566评论 0 6
  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 1,639评论 4 12
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,736评论 0 11
  • 一:java概述: 1,JDK:Java Development Kit,java的开发和运行环境,java的开发...
    慕容小伟阅读 1,867评论 0 10
  • 一、基本用法 复制数据,点击需要粘贴到的单元格,点击右键,粘贴选项,这里有六种功能: 粘贴,可以把原单元格里仍...
    岁月静好_69c3阅读 249评论 0 0