亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java超詳細(xì)講解多態(tài)的調(diào)用

 更新時間:2022年05月13日 15:40:54   作者:花~盜  
多態(tài)就是指程序中定義的引用變量所指向的具體類型和通過該引用變量發(fā)出的方法調(diào)用在編程時并不確定,而是在程序運(yùn)行期間才確定,即一個引用變量到底會指向哪個類的實(shí)例對象,該引用變量發(fā)出的方法調(diào)用到底是哪個類中實(shí)現(xiàn)的方法,必須在由程序運(yùn)行期間才能決定

概念:多態(tài)是什么它就相當(dāng)于區(qū)別對待,比如買票這個行為,當(dāng)普通人買票時,是全價買票;學(xué)生買票時,是半價買票;軍人買票時是優(yōu) 先買票。再者就是再舉個詳細(xì)的例子: 最近為了爭奪在線支付市場,支付寶年底經(jīng)常會做誘人的掃紅包-支付-給獎勵金的活動。那么 大家想想為什么有人掃的紅包又大又新鮮8塊、10塊…,而有人掃的紅包都是1毛,5毛…。其實(shí)這背后也是 一個多態(tài)行為。支付寶首先會分析你的賬戶數(shù)據(jù),比如你是新用戶、比如你沒有經(jīng)常支付寶支付等等,那么 你需要被鼓勵使用支付寶,那么就你掃碼金額 = random()%99;比如你經(jīng)常使用支付寶支付或者支付寶賬戶 中常年沒錢,那么就不需要太鼓勵你去使用支付寶,那么就你掃碼金額 = random()%1;總結(jié)一下:同樣是 掃碼動作,不同的用戶掃得到的不一樣的紅包,這也是一種多態(tài)行為。ps:支付寶紅包問題純屬瞎編,大家 僅供娛樂。

多態(tài)的必要條件:繼承,重寫,杜磊引用指向子類對象

當(dāng)使用多態(tài)方式調(diào)用方法時,首先檢查父類中是否有該方法,如果沒有,則編譯錯誤;如果有,再去調(diào)用子類的同名方法

多態(tài)的特點(diǎn):

1:應(yīng)用程序不必為每一個派生類編寫功能調(diào)用,只需要對抽象基類進(jìn)行處理即可。大大提高程序的可復(fù)用性。

2:派生類的功能可以被基類的方法或引用變量所調(diào)用,這叫向后兼容,可以提高可擴(kuò)充性和可維護(hù)性。

代碼如下:

測試類:

package com.ytzl.total;
/*多態(tài)*/
public class polymorphic {
    public static void main(String[] args) {
        //使用純純的調(diào)用來測試
        fathers fathers = new fathers();//調(diào)用父類
        Eldestson eldestson = new Eldestson();//調(diào)用大兒子類
        youngestson youngestson = new youngestson();//調(diào)用小兒子類
        fathers.eat();//正常調(diào)用
        eldestson.eat();//正常待用
        youngestson.eat();//正常調(diào)用
        System.out.println("\n");
        //使用多態(tài)來測試
        fathers eldestson1 = new Eldestson();///子類對象的地址值交給父類的eldestson1來保存
        fathers youngestson1 = new youngestson();//子類對象的地址值交給父類的youngestson1來保存
        eldestson1.eat();//多態(tài)調(diào)用
        youngestson1.eat();//多態(tài)調(diào)用
        eldestson1.setMoney(100);//通過多態(tài)去賦值
        eldestson1.setName("小明");//通過多態(tài)去賦值
        youngestson1.setMoney(50);//通過多態(tài)去賦值
        youngestson1.setName("小張");//通過多態(tài)去賦值
        eldestson1.money();//通過多態(tài)以子類去獲取父類方法
        youngestson1.money();//通過多態(tài)以子類去獲取父類方法
    }
}

父類:

package com.ytzl.total;
/*父類*/
public class fathers {
    private int money;
    private String name;
    public fathers() {
    }
    public fathers(int money, String name) {
        this.money = money;
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getMoney() {
        return money;
    }
    public void setMoney(int money) {
        this.money = money;
    }
    public void eat(){
        System.out.println("我是父類,我老了牙壞了不能吃硬的。");
    }
    public void money(){
        System.out.println("父類給了"+name+money+"元");
    }
}

子類一:

package com.ytzl.total;
/*大兒類*/
public class Eldestson extends fathers{
    public void eat(){
        System.out.println("我是大兒子類,我還年輕我胃口好牙好什么都能吃。");
    }
}

子類二:

package com.ytzl.total;
/*小兒子類*/
public class youngestson extends fathers{
    public void eat(){
        System.out.println("我是小兒子類,我還小我牙都沒長齊不能吃太硬的。");
    }
}

運(yùn)行結(jié)果如下:

到此這篇關(guān)于Java超詳細(xì)講解多態(tài)的調(diào)用的文章就介紹到這了,更多相關(guān)Java 多態(tài)調(diào)用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java求最大公約數(shù)與最小公倍數(shù)的方法示例

    java求最大公約數(shù)與最小公倍數(shù)的方法示例

    這篇文章主要介紹了java求最大公約數(shù)與最小公倍數(shù)的方法,涉及java數(shù)值運(yùn)算的相關(guān)操作技巧,并附帶分析了eclipse環(huán)境下設(shè)置運(yùn)行輸入?yún)?shù)的相關(guān)操作技巧,需要的朋友可以參考下
    2017-11-11
  • Spring Boot2.x集成JPA快速開發(fā)的示例代碼

    Spring Boot2.x集成JPA快速開發(fā)的示例代碼

    這篇文章主要介紹了Spring Boot2.x集成JPA快速開發(fā),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 詳解自動注冊Gateway網(wǎng)關(guān)路由配置

    詳解自動注冊Gateway網(wǎng)關(guān)路由配置

    這篇文章主要為大家介紹了自動注冊Gateway網(wǎng)關(guān)路由配置的方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 關(guān)于Java?獲取時間戳的方法

    關(guān)于Java?獲取時間戳的方法

    這篇文章主要介紹了關(guān)于Java獲取時間戳的方法,Java有兩個取時間戳的方法,分別是System.currentTimeMillis()和System.nanoTime()下文對兩種方法進(jìn)行詳細(xì)介紹,需要的小伙伴可以參考一下
    2022-04-04
  • spring-boot中使用spring-boot-devtools的實(shí)現(xiàn)代碼

    spring-boot中使用spring-boot-devtools的實(shí)現(xiàn)代碼

    這篇文章主要介紹了spring-boot中使用spring-boot-devtools的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 匯總Java中List 去重的 6 種方法

    匯總Java中List 去重的 6 種方法

    這篇文章主要介紹了匯總Java中List 去重的 6 種方法,文章圍繞主題展開List去重的方法,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • SpringCloud微服務(wù)之Config知識總結(jié)

    SpringCloud微服務(wù)之Config知識總結(jié)

    今天帶大家學(xué)習(xí)SpringCloud微服務(wù)中的Config的相關(guān)知識,文中有非常詳細(xì)的介紹,對正在學(xué)習(xí)SpringCloud微服務(wù)的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • springboot如何讀取自定義properties并注入到bean中

    springboot如何讀取自定義properties并注入到bean中

    這篇文章主要介紹了springboot讀取自定義properties并注入到bean中,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 通過Spring Boot配置動態(tài)數(shù)據(jù)源訪問多個數(shù)據(jù)庫的實(shí)現(xiàn)代碼

    通過Spring Boot配置動態(tài)數(shù)據(jù)源訪問多個數(shù)據(jù)庫的實(shí)現(xiàn)代碼

    這篇文章主要介紹了通過Spring Boot配置動態(tài)數(shù)據(jù)源訪問多個數(shù)據(jù)庫的實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2018-03-03
  • java中&與&&的區(qū)別

    java中&與&&的區(qū)別

    本文主要介紹了java中&與&&的區(qū)別,具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03

最新評論