站長資訊網
        最全最豐富的資訊網站

        JAVA面向對象之繼承、構造方法、重寫和重載(總結分享)

        本篇文章給大家帶來了關于java的相關知識,其中主要介紹了關于面向對象的相關問題,包括了有參構造、無參構造、類的繼承、方法的重寫和重載等等內容,下面一起來看一下,希望對大家有幫助。

        JAVA面向對象之繼承、構造方法、重寫和重載(總結分享)

        推薦學習:《java教程》

        構造方法

        類的構造方法是特殊的方法,此方法名稱必須和類名一致,構造不能有返回值 不使用void,不能直接調用,在類對象實例化時自動調用,new 的時候可以調用。一般構造方法用于類對象實例化時的初始化。如果一個類沒有編寫構造方法,系統自動給此類編譯時添加一個無參構造方法。如果聲明類編寫了構造方法,系統不再添加無參構造方法,建議編寫完構造方法時,最好編寫一個無參構造方法。

        無參構造

        說白了就是沒有參數的構造方法
        概念看不懂舉個例子就清晰了。
        聲明一個類A

        public class A {     }

        在類A中創建一個構造方法A(),并且打印出一句話
        構造方法必須和類名一樣

        public class A {     public A(){         System.out.println("構造方法A()");     }}

        新建一個測試類,并在類中nuw一個A類的對象

        public class Test {     public static void main(String[] args) {         A a = new A();     }}

        執行main方法試試看

        JAVA面向對象之繼承、構造方法、重寫和重載(總結分享)

        構造方法相當于在new對象是自動使用的方法

        有參構造

        有參構造就是有參數的構造方法
        在類A中聲明一個有參數的構造方法,傳入兩個String類型的參數,a和b

        public class A {     public A() {     }      public A(String a, String b) {         System.out.println(a + b);     }}

        在測試類中new一個對象a時傳入參數

        public class Test {     public static void main(String[] args) {         A a = new A("aaa", "bbb");     }}

        執行main方法
        JAVA面向對象之繼承、構造方法、重寫和重載(總結分享)

        注意

        沒有構造方法的時候,類中隱藏了一個無參構造。但是創建一個有參構造,隱藏的無參構造就會消失。那么以后new對象就只能帶參數了。所以在建有參構造時一定要創建一個無參構造方法放那。

        類的繼承

        java語言中,類class 是單繼承,多實現接口。接口interface 是多繼承的。

        JAVA面向對象之繼承、構造方法、重寫和重載(總結分享)

        為什么要繼承呢?因為子類想要在父類的基礎上添加新功能。
        子類繼承父類可以繼承父類中的方法和屬性
        下面舉例分析:
        父類是人,子類是老司機。
        人的特征有:兩只手,兩只眼,兩只腳,會吃會喝
        老司機繼承了人類的特征,并且多出了自己會開車這個功能。

        代碼如下:

        這是一個人 類,具有以下屬性和功能。

        public class Ren {     public final String shou = "兩只手";     public final String jiao = "兩只腳";     public final String yan = "兩只眼";      public void chi() {         System.out.println("會吃");     }      public void he() {         System.out.println("會喝");     }}

        這是老司機類,繼承了人類。并且多了個會開車的功能

        public class Siji extends Ren {     public void kai() {         System.out.println("會開車");     }}

        測試:創建老司機對象輸出屬性并調用方法。

        public class Test {     public static void main(String[] args) {         Siji b = new Siji();         System.out.println(b.jiao);         System.out.println(b.shou);         System.out.println(b.yan);         b.chi();         b.he();         b.kai();     }}

        JAVA面向對象之繼承、構造方法、重寫和重載(總結分享)

        方法重寫、重載

        重寫 覆蓋:方法名,返回類型,形參都一樣。有此種情況的,必須為繼承關系。
        重載:方法名一樣,返回類型,形參個數,類型不樣的方法,不一定必須是繼承關系,同一個類中都可以,比如 構造方法重載

        重寫

        因為子類不滿意父類的方法所以想把它改一下,這就是子類重寫父類的方法。
        比如人會吃會喝,但是老司機不喜歡它會吃這個功能,想把它改一下,改成會吃屎。

        代碼如下:

        老司機重寫人類的chi()方法
        方法名一定要一樣

        public class Siji extends Ren {     public void kai() {         System.out.println("會開車");     }      public void chi() {         System.out.println("會吃屎");     }}

        現在重寫運行測試類
        JAVA面向對象之繼承、構造方法、重寫和重載(總結分享)

        重載

        有參構造和無參構造就是方法重載,一個類中有兩個名字一樣的方法,但是他們的返回值類型和參數類型,參數個數不一樣。
        兩個方法的返回值類型和參數類型,參數個數,只要有一個不一樣。但是他們方法名一樣,那么兩個方法就重載。

        推薦學習:《java教程》

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 亚洲精品国产高清嫩草影院| 亚洲AV永久无码精品成人| 欧美亚洲另类精品第一页| 综合人妻久久一区二区精品| 精品黑人一区二区三区| 日韩精品专区在线影院重磅| 国产欧美日韩综合精品二区| 国产成人精品手机在线观看| 亚洲A∨精品一区二区三区| 999久久久国产精品| 99re热视频这里只精品| 亚洲国产精品久久电影欧美| 精品国产高清在线拍| 亚洲国产精品一区| 国产精品久久亚洲不卡动漫| 亚洲av无码国产精品夜色午夜 | 国产精品无码国模私拍视频 | 欧美亚洲色综久久精品国产| 久久乐国产精品亚洲综合| 99久久免费国产精品| 精品免费视在线观看| 大伊香蕉精品一区视频在线| 久久精品国产亚洲精品2020| 亚洲精品国产精品乱码不99| 日韩人妻无码精品无码中文字幕 | 四虎成人www国产精品| 99re这里只有精品热久久| 国产精品综合色区在线观看| 久久久久无码精品国产不卡| 午夜精品久久久久久99热| 亚洲精品国产av成拍色拍| 亚洲AV永久无码精品一区二区| 久久精品国产WWW456C0M| 狠狠精品久久久无码中文字幕 | 婷婷成人国产精品| 国产成人精品日本亚洲专区| 99久久精品国产综合一区| 国产成人精品cao在线| 国产成人精品亚洲精品| 国产国产成人久久精品| 国产精品第一页在线|