Java物件導向知識點

來源:互聯網
上載者:User

標籤:

對象:一切客觀存在的事物都是對象
文法部分:
類的概念:1.類是對象的抽象
2.類是客觀事物在人腦中的主觀反應
3.類是對象的模板
類的設計:
屬性:定義位置:類以內,方法以外
執行個體變數:1 有預設值,
2 至少在本類的內部有效,
3 可以和局部變數重複命名,局部變數優先
方法:功能 去掉static
聲明部分:修飾符 傳回值類型 方法名稱 參數表 異常
實現部分 {}方法


構造方法:特殊方法
a.構造方法必須和類名相同
b.沒有傳回值類型組成部分,修飾符 方法名稱 參數表 異常
c.不能手動調用,建立對象時,調用構造方法

作用:有參的構造方法,給屬性賦值

注意:如果沒有寫出任何構造方法,預設的是公開的無參的構造方法
如果是寫出有參數的構造方法,系統不再預設無參的構造方法

建立對象:
文法:new 構造方法(構造參數);
Student student1 = new Student();//調用無參數的構造方法
Student student2 = new Student(1, "yy");//調用有參數的構造方法
this關鍵字:
a.文法比較嚴格,
this(參數);調用本類的構造方法,必須在構造方法的第一句
注意:不要遞迴調用構造方法

b.類的內部,調用執行個體變數時加 this

當局部變數和執行個體變數重複命名時,局部變數優先,
如果是想使用執行個體變數加 this.屬性名稱
方法的重載(overLoad)
作用:屏蔽了使用者使用的差異,調用方法時更加靈活

文法要求:
1.方法名稱相同
2.參數列表不同(類型不同,個數,順序);
3.傳回值不要求

物件導向的三大特性:
1、封裝
代碼實現:對屬性私人,提供公開的set/get方法
2、繼承
關鍵字: extends
如:A extends B ---> B是A的父類
①私人的方法不可以繼承
②構造方法不可以繼承
關鍵字: super
①super.屬性名稱、方法名表示訪問父類的屬性,或者調用父類的方法
②super(),傳入實參代指調用父類的構造方法,必須放在構造方法的第一行
在構造方法中如果沒有this,也沒有super,那麼系統會預設添加一個
方法的覆蓋:子類繼承父類的方法中有特殊的實現
文法要求:1、函數名必須相同,參數表一樣,傳回值類型一樣(聲明一樣)
2、修飾符:和父類的相同或者更寬
修飾符的存取權限由窄到寬:
private----> default--->protected--->public
從一般到特殊的關係:父類是子類共性的抽象
instanceof 表示從屬關係,是...的一種
3、多態
①父類的引用指向子類的對象
Animal a = new Dog();
②編譯時間多態:引用只能調用其引用下的方法或者訪問引用下的屬性
③運行時多態:啟動並執行時候會根據實際類型調用其覆蓋後的方法
多態的實質:方法的重載和方法的覆蓋
①多態用在傳回值上
public A m(){} 傳回值是A類或者其子類
多態用在參數表中
public 傳回值類型 m(A a){} 參數表可以是A類,或者是A的子類

 

Java物件導向知識點

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.