Java編程—在測試中考慮多態(tài)-創(chuàng)新互聯(lián)

面向?qū)ο缶幊逃腥筇匦裕悍庋b、繼承、多態(tài)。

專注于為中小企業(yè)提供網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)臨淄免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

封裝隱藏了類的內(nèi)部實(shí)現(xiàn)機(jī)制,可以在不影響使用的情況下改變類的內(nèi)部結(jié)構(gòu),同時(shí)也保護(hù)了數(shù)據(jù)。對(duì)外界而已它的內(nèi)部細(xì)節(jié)是隱藏的,暴露給外界的只是它的訪問方法。

繼承是為了重用父類代碼。兩個(gè)類若存在IS-A的關(guān)系就可以使用繼承。,同時(shí)繼承也為實(shí)現(xiàn)多態(tài)做了鋪墊。那么什么是多態(tài)呢?多態(tài)的實(shí)現(xiàn)機(jī)制又是什么?請(qǐng)看我一一為你揭開:

所謂多態(tài)就是指程序中定義的引用變量所指向的具體類型和通過該引用變量發(fā)出的方法調(diào)用在編程時(shí)并不確定,而是在程序運(yùn)行期間才確定,即一個(gè)引用變量倒底會(huì)指向哪個(gè)類的實(shí)例對(duì)象,該引用變量發(fā)出的方法調(diào)用到底是哪個(gè)類中實(shí)現(xiàn)的方法,必須在由程序運(yùn)行期間才能決定。因?yàn)樵诔绦蜻\(yùn)行時(shí)才確定具體的類,這樣,不用修改源程序代碼,就可以讓引用變量綁定到各種不同的類實(shí)現(xiàn)上,從而導(dǎo)致該引用調(diào)用的具體方法隨之改變,即不修改程序代碼就可以改變程序運(yùn)行時(shí)所綁定的具體代碼,讓程序可以選擇多個(gè)運(yùn)行狀態(tài),這就是多態(tài)性。練習(xí)(1):創(chuàng)建一個(gè)Cycle類,它具有子類Unicycle,Bycycle,Tricycle.演示每一個(gè)類型的實(shí)例都可以經(jīng)由ride()方法向上轉(zhuǎn)型為Cycle.

向上轉(zhuǎn)型就是允許將多種從同一基類的導(dǎo)出類看成同一類型。

多態(tài)方法調(diào)用就是允許一種類型表現(xiàn)出與其他相似類型之間的區(qū)別,只要他們是從同一基類導(dǎo)出而來的。這種區(qū)別由各個(gè)導(dǎo)出類型方法的具體不同實(shí)現(xiàn)而表現(xiàn)出來的,雖然這些方法都是由基類調(diào)用的。

public class Test1 {
  public static void main(String[] args){
    Unicycle unicycle = new Unicycle("Unicycle");
    Bicycle bicycle = new Bicycle("Bicycle");
    Tricycle tricycle = new Tricycle("Tricycle");
    Cycle.ride(unicycle);
    Cycle.ride(bicycle);
    Cycle.ride(tricycle);
  }
}
class Cycle{
  private String name;
  public Cycle(String str){
    name = str;
  }
  public static void ride(Cycle c){
    System.out.println(c.name + "is riding");
  }
}
class Unicycle extends Cycle{
  private String name;
  public Unicycle(String str) {
    super(str);
    name = str;
  }
}
class Bicycle extends Cycle{
  private String name;
  public Bicycle(String str) {
    super(str);
    name = str;
  }
}
class Tricycle extends Cycle {
  private String name;
  public Tricycle(String str) {
    super(str);
    name = str;
  }
}

網(wǎng)站題目:Java編程—在測試中考慮多態(tài)-創(chuàng)新互聯(lián)
分享鏈接:http://bm7419.com/article34/dihepe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)站收錄網(wǎng)站設(shè)計(jì)公司、云服務(wù)器、電子商務(wù)做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)