日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java笔记03-Constructor Override

發布時間:2023/12/20 java 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java笔记03-Constructor Override 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java筆記03-Constructor & Override

構造方法基本概念

構造方法是類中的一種特殊方法

它是在類創建對象(實例化)的時候自動調用的方法

這個和python中的__init__初始化魔術方法類似

可以在創建對象的時候進行參數的傳遞

默認送您的構造

一個類編譯過后都需要有一個構造方法.如果程序中沒有寫的話

編譯器在編譯時就會幫你加上一個無參數的空的構造方法(稱之為"默認的構造方法")

那要是你定義了構造方法了,編譯器也不欠欠的幫你加了,它也懶

關于構造的建議

  • 當類中有成員變量,并且還不是常量的時候,建議提供兩個版本的構造方法,一個無參數的構造,一個全屬性的構造

  • 而類中所有成員變量都是常量或者干脆就沒有成員變量的時候,建議不要寫構造

成員方法重載

說白了就是同樣名稱的方法,可以有很多不同參數列表的版本,有的有參數,有的沒有參數,而方法名一樣

這樣官方說能讓類的設計變的更加優雅,我是沒看出來

好像是能夠一個方法處理不同的數據

這樣的設計方式成為重載設計

this關鍵字

this就是代表對象本身(調用該方法的對象)
就像JavaScript中的this
就像python中的self

OOP三大特性之封裝

封裝的面向對象的三大特性之一,

如果代碼不做限制,則很多屬性值是無效的

封裝就是保證屬性值有效的技術

封裝的步驟

  • 屬性(不是常量的)必須使用private修飾,確保外部變量無法直接進行賦值操作

  • 提供操作屬性的方法,一般都是讀寫屬性方法,get屬性和set屬性方法

  • 構造方法中,也要通過調用set和get方法來操作

  • static關鍵字

    靜態static關鍵字修飾屬性或者方法

    可以將對象層級從對象級升級成為類級別,在類加載的時候就可以調用準備好的屬性或者方法

    換句話說就是static修飾的可以直接進行調用

    單例設計模式

    設計模式是形成標準化流程的經驗總結,是特定問題的固定的解決方案

    單例設計思路:

    1. 先private構造,阻止外部去創建對象 2. 本類提供一個對象,定義一個private static 的本類類型的屬性 3. 對外提供get方法,將唯一的對象返回到外部

    單例分為餓漢式和懶漢式兩種寫法

    java中單例模式是一種常見的設計模式,在實際開發中比較常用
    具體詳細內容可以參考:Java設計模式之單例模式

    OOP三大特性之繼承

    繼承就是子類復用父類的代碼

    使用關鍵字extends表示類和類之間的繼承關系

    class Son extends Father{// ... }

    Java中不能多繼承,可以通過接口的多實現來彌補類的多繼承

    繼承中的構造方法

    子類必須通過super();關鍵字才能調用父類中的構造方法

    這樣才能好好的初始化來自父類的成員變量

    this()和super()必須出現在構造的第一行,因此不可能同時出現

    方法的重寫

    • 有些父類寫好的方法,子類它不太喜歡

    子類就可以使用方法重寫(覆蓋)來改變他爸爸給他的方法

    • 方法重寫的原則:
    1. 相同的方法名稱,相同的參數列表,相同的返回值類型或者返回子類 2. 訪問權限不能變小,可以變大 3. 不能拋出更大的異常
    • 在子類重寫的方法中,可以通過super關鍵字調用父類的"原始"方法.
    • static 方法重寫之后還是static的

    OOP三大特性之多態

    一母生九子,九子各不同

    Person p = new Student();
  • 只能使用母類中定義的屬性和方法
  • 不能直接使用子類中擴展的屬性和方法
  • 如果子類重寫了方法,靜態方法調父類的,非靜態方法調子類的
    原因:
    編譯時,p被認為是Person類型;但在運行時是Student類型.在內存中其實是子類對象.
  • 總結:
    左父右子即為多態

    多態特點

    多態時,如果想要把擴展的屬性和方法調用出來,需要做類型轉換

    父類轉子類需要做強制類型轉換(向下轉型)
    子類轉父類需要做強制類型轉換(向上轉型)

    對象強制類型轉換是一種還原行為,必須內存中是該類型的對象才能成功

    instanceof運算符

    instanceof就是判斷對象的類型,如果是該類型返回true,不是返回false

    語法格式:

    對象 instanceof 類型 obj instanceof Object p instanceof Person

    嚴格的來說,在進行對象的向下轉型之前,都得instanceof一下才能

    這個instanceof必須發生在父子之間才行哦!

    抽象類

    用abstract修飾的類,這個類吧就厲害了

    它不能實例化,這可咋用啊

    唉,對 就是用來繼承的,你不能實例化你兒子行啊

    抽象方法所在類必須是抽象類,而子類如果不是抽象類,一定要重寫父類中的抽象方法才行(實現父類的方法體)

    總結

    以上是生活随笔為你收集整理的Java笔记03-Constructor Override的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 一本高清dvd在线播放 | 爱情岛论坛自拍亚洲品质极速最新章 | 成人黄性视频 | 天天舔夜夜操 | 亚洲第一色网 | 美日韩精品一区二区 | 亚洲自拍另类 | 操一操视频 | 国产精品乱码久久久 | 国产欧美综合一区二区三区 | 仙踪林久久久久久久999 | 污污视频免费网站 | 国产精品高清在线 | 日韩av在线高清 | 久草视频免费在线播放 | 超碰97国产| 日本一区免费视频 | 中文精品无码中文字幕无码专区 | 国产一区二区在线免费观看 | 性做久久久久久免费观看 | 国产精品一区二区三区免费观看 | 拍摄av现场失控高潮数次 | 国产第一精品视频 | 国产激情一区二区三区在线观看 | 亚洲精品国产免费 | 自拍偷拍第5页 | 国产性猛交╳xxx乱大交一区 | 日韩欧美aⅴ综合网站发布 国产成人一区二区三区小说 | 影音先锋黄色网址 | 亚洲精品乱码久久久久久写真 | 九九热在线视频观看 | 国产专区一区二区三区 | 欧美一级在线免费观看 | 久久久久无码国产精品一区 | 在线免费看mv的网站入口 | 国产毛片毛片毛片毛片毛片毛片 | 日韩理论片在线观看 | 久久久久久久成人 | 久本草精品 | 国产一级淫片a | 肥熟女一区二区三肥熟女 | 亚洲精品一区二三区不卡 | 欧美日韩成人 | 欧美人与性囗牲恔配 | 最新中文在线视频 | 蜜臀麻豆 | 三上悠亚一区二区 | 欧美精品成人在线 | 欧美精品一区二区免费 | 福利二区视频 | 白嫩初高中害羞小美女 | 97国产在线播放 | av在线电影网 | 五月婷婷综合色 | 亚洲日本影院 | 日本少妇喷水 | 亚洲精品国产综合 | v99av| 国产一级视频在线播放 | 日韩精品中文字幕一区二区三区 | 美女扒开腿让人桶爽原神 | 中国免费黄色片 | 伊人激情综合网 | 午夜性色福利视频 | 亚洲产国偷v产偷v自拍涩爱 | 欧美色图888| 亚洲一区二区高清 | 国产精品成人69xxx免费视频 | 打白嫩屁屁网站视频短裙 | 日韩一区二区影院 | 中国av免费 | 91秦先生在线播放 | 国产亚洲小视频 | 欧美成人资源 | 波多野42部无码喷潮 | 开心激情av | 视频在线观看免费大片 | 国产黄色小视频在线观看 | 亚洲人在线视频 | 中文字幕无码乱人伦 | 国产三级久久久 | 色哟哟欧美精品 | www爱爱| 福利视频黄色 | 日韩成人一区二区视频 | www.五月激情 | 黄色片成人 | 国产学生美女无遮拦高潮视频 | www.av成人 | 免费看国产曰批40分钟粉红裤头 | 久久精品国产亚洲av蜜臀色欲 | 重囗味sm一区二区三区 | 成人高清视频在线观看 | 午夜视频在线播放 | 天堂中文在线最新 | 在线成人免费电影 | 中文字幕制服丝袜 | av片大全 | 一区二区三区视频在线观看免费 |