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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Java OOP(Object Oriented Programming)个人理解及总结

發布時間:2023/11/28 生活经验 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java OOP(Object Oriented Programming)个人理解及总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  • 面向對象編程(Object Oriented Programming,OOP,面向對象程序設計)
  • 其三大特征:封裝,繼承,多態;
    • 封裝:解決數據的安全問題。
    • 繼承:解決代碼的重用問題。
    • 多態:解決程序的拓展問題。

封裝(Encapsulation)

  • 個人理解:將該類的代碼和數據包裝,隱藏起來,形成一個保護屏障;同時要想訪問該的代碼和數據,必須通過嚴格的接口控制;

  • 優點:

    • 減少耦合(具體包括哪些耦合?代碼,功能)。
    • 便于修改自身結構。
    • 便于內部管理(成員變量),高度的中央集權。
    • 簡潔方便,便于調用。
    • 例如:常用的JavaBean;
      • 先定義該類的(私有)屬性,以及相關的公用方法
      • 在調用該類時,直接創建該類的實例對象,調用公用方法即可;便可達到上述優點

繼承

  • 個人理解:為了解決相同,類似的問題,將二者相似,共有的屬性行為,提取出來進而新建父類,通過繼承的方式解決代碼量大且臃腫;同時可以增加后期代碼可維護性;
  • 格式
class father {}class daughter extend father {}
    • Java不支持多繼承,多繼承通過接口實現;
    • Java支持多重繼承,即可理解為爸爸繼承爺爺,孫子繼承爸爸,進而實現孫子繼承爺爺;
    • 子類無法繼承父類私有方法;
    • 子類可以擁有自己私有方法,同時可以對父類進行拓展;
    • Java所有類都繼承與java.lang.Object;
  • 關鍵字使用:

    • super 和 this:前者用來引用當前對象的父類;后者用于對自己的引用;
    • final 最終類,無法被繼承;
  • 對于構造器,不懂(需要的朋友可以自行學習,并推薦給本人);


多態

  • 個人理解:面對一行為,具有多種不同表現形式,多態性是對象多種表現形式的體現;

  • 作用:使程序具有良好的拓展,可以對所有類的對象進行通用處理;

  • 理解,從未使用過,概念模糊;

  • 多態的實現方式:

    • 重寫
    • 接口
    • 抽象類和抽象方法
  • 補充:
    對于重寫與重載:

    • 參數列表與被重寫方法的參數列表必須完全相同;
    • 重載在一個類中,方法名字相同,參數不同,返回類型可相同也可不同;
    • 代碼參考:
public class Overloading {public int test(){System.out.println("test1");return 1;}public void test(int a){System.out.println("test2");}   //以下兩個參數類型順序不同public String test(int a,String s){System.out.println("test3");return "returntest3";}   public String test(String s,int a){System.out.println("test4");return "returntest4";}   public static void main(String[] args){Overloading o = new Overloading();System.out.println(o.test());o.test(1);System.out.println(o.test(1,"test3"));System.out.println(o.test("test4",1));}
}
Console:test11test2test3 returntest3test4returntest4

  • 總結:
    • 方法重載,同類下多個同名方法,參數數量不同,類型不同,次序不同;
    • 方法重寫,子類存在與父類同名方法,參數個數,類型相同,返回值相同。
    • 前者是一個類的多態性體現,后者則是子類與父類的一種多態性表現;

總結

以上是生活随笔為你收集整理的Java OOP(Object Oriented Programming)个人理解及总结的全部內容,希望文章能夠幫你解決所遇到的問題。

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