<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一篇文章帶你了解Java繼承那些事兒

          共 2899字,需瀏覽 6分鐘

           ·

          2020-12-25 09:49

          點(diǎn)擊上方“Java進(jìn)階學(xué)習(xí)交流”,進(jìn)行關(guān)注

          后臺回復(fù)“Java”即可獲贈Java學(xué)習(xí)資料

          其間旦暮聞何物?杜鵑啼血猿哀鳴。

          ????前面的文章給大家介紹了Java諸多基礎(chǔ)知識,感興趣的小伙伴記得前往噢:Java基礎(chǔ)入門篇(五)——Java變量類型的轉(zhuǎn)換和運(yùn)算符Java基礎(chǔ)入門篇(四)——Java變量數(shù)據(jù)類型和基本數(shù)據(jù)類型Java基礎(chǔ)入門篇(三)——Java常量、變量Java基礎(chǔ)入門篇(二)——Java注釋、關(guān)鍵字和標(biāo)識符Java基礎(chǔ)入門篇(一)——Java虛擬機(jī)和運(yùn)行環(huán)境。接下來開始我們今天的內(nèi)容吧~


          一、繼承的概念

          1.什么是繼承

          在現(xiàn)實(shí)生活中,繼承指的是子女繼承父輩的財(cái)產(chǎn)。在程序中,當(dāng)一個(gè)類A能夠得到另一個(gè)類B中所有非私有的數(shù)據(jù)和操作的定義作為自己的部分或全部成分時(shí),我們就叫做這兩個(gè)類之間具有繼承關(guān)系。

          2.例如貓、狗、兔、豬都屬于動物,在程序中貓、狗、兔、豬都繼承動物。波斯貓和英國短毛貓繼承貓,這些動物會形成一個(gè)繼承體系。在程序中繼承在現(xiàn)有的類基礎(chǔ)上創(chuàng)建一個(gè)新的類,創(chuàng)建一個(gè)新的類叫做子類,現(xiàn)有類叫做父類或超類,子類會擁有父類所有可繼承的屬性和方法。

          3.繼承的實(shí)現(xiàn)

          ① 確定父類。

          ② 定義子類。

          [類修飾符]  class 子類名 extends 父類名

          子類能夠繼承父類所有非私有的屬性和方法。

          ③ 實(shí)現(xiàn)子類的功能。

          4.類是如何繼承父類案例一

          //定義Fruit水果類class Fruit{    public double weight;//重量屬性    //info()方法    public void info(){            System.out.println("我是一個(gè)水果,重量為" + weight + "g!");    }}public class Apple extends Fruit{    public static void main(String[] args){            Apple a = new Apple();//創(chuàng)建對象            a.weight = 87;//給weight屬性賦值            a.info();//調(diào)用info方法    }}

          輸出的結(jié)果是:

          我是一個(gè)水果,重量為87.0g
          從上面代碼中,我們可以看出定義了一個(gè)Fruit類,在Fruit類中定義了weight屬性和info方法。Apple類繼承Fruit類,創(chuàng)建對象實(shí)例化,然后給weight屬性賦值,調(diào)用info方法。

          5.類是如何繼承父類案例二

          class Animal{    public String name;//名字屬性    public int age;//年齡屬性    //動物叫的方法    void shout(){        System.out.print("喵喵喵~~~");  }}//定義Cat繼承Animal類class Cat extends Animal{    //顯示名字和年齡方法    public void show(){        System.out.print("我是"+name+","+"今年"+age+"歲");  }}public class p20 {public static void main(String[] args) {    // TODO Auto-generated method stub    Cat c=new Cat();//創(chuàng)建Cat類實(shí)例對象    c.name="英國短毛貓";//給Cat類的name屬性賦值    c.age=2;//給Cat類的age屬性賦值    c.show();//調(diào)用Cat類的show()方法    c.shout();//調(diào)用Cat類的shout()方法  }}

          輸出的結(jié)果是:

          我是英國短毛貓,今年2歲喵喵喵~~~

          在上面代碼中,首先是定義了一個(gè)Animal類,Cat類使用extends繼承Animal類.,使得Cat類是Animal類的子類,Animal作為一個(gè)父類。我們便發(fā)現(xiàn)在子類并沒有定義name、age屬性和shout()方法,可以訪問到它們非私有屬性和方法。說明了子類是可以擁有父類的所有非私有的屬性和方法。


          二、繼承需要注意的問題

          1.單重繼承是指任何一個(gè)類都只有一個(gè)單一的父類。

          例如:

          class A1{    void show(){    System.out.println("A1");    }}class A2{    void show(){    System.out.println("A1");}class B extends A1,A2{    public void show(){    System.out.println("bbb");    } }

          在上面代碼中是不合法的,任何一個(gè)類只有支持單繼承,不可以多重繼承。也是就B類是不可以同時(shí)繼承A1和A2。如果B b=new B(),那么b.show()是調(diào)用哪個(gè)一個(gè)父類方法呢?無法給出答案,所以是不能多重繼承。

          2.多重繼承是指一個(gè)類可以有一個(gè)以上的父類,它的靜態(tài)的數(shù)據(jù)屬性和操作從所有這些父類中繼承。

          3.多個(gè)類可以繼承一個(gè)父類。

          例如:

          class A{}class B extends A{}class C extends A{}

          在上面代碼中是合法的,B類和C類都可以繼承A類的所有非私有屬性和方法。

          4.一個(gè)類的父類可以去繼承另外的父類,這就是多層繼承。

          例如:

          class A{}
          class B extends A{}
          class C extends B{}

          在上面代碼中,實(shí)現(xiàn)了多層繼承B類繼承A類,B類是A類的子類,C類繼承B類,C類是B類的子類,C類也是A類的子類。在一個(gè)類是某個(gè)類父類的同時(shí),也是另一個(gè)類的父類。例如B類是A類的子類,也是C類的父類。


          三、總結(jié)

          本文主要介紹了繼承、繼承需要注意的問題。繼承是當(dāng)一個(gè)類A能夠得到另一個(gè)類B中所有非私有的數(shù)據(jù)和操作的定義作為自己的部分或全部成分時(shí),我們就叫做這兩個(gè)類之間具有繼承關(guān)系。

          本文介紹了繼承的實(shí)現(xiàn)方法,通過兩個(gè)案例幫助理解繼承的用法。繼承是只支持單繼承,不支持多重繼承。多個(gè)類可以繼承一個(gè)父類。一個(gè)類的父類是可以繼承另外的父類。希望大家通過本文的學(xué)習(xí),對你有所幫助!

          -------------------?End?-------------------

          往期精彩文章推薦:

          歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持

          想加入Java學(xué)習(xí)群請?jiān)诤笈_回復(fù)【入群

          萬水千山總是情,點(diǎn)個(gè)【在看】行不行

          瀏覽 57
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日韩成人午夜视频 | 欧美亚洲日韩电影 | 久久综合久色欧美综合狠狠 | 91在线对白| 操逼视频在线免费看 |