一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Java(面向?qū)ο螅┗A(chǔ)

 印度阿三17 2019-07-10

Java面向?qū)ο?/strong>


**面向?qū)ο笕筇卣鳎?*
繼承
封裝
多態(tài)
?

OOA(面向?qū)ο蟮姆治?
OOD(面向?qū)ο蟮脑O(shè)計)
OOP(面向?qū)ο蟮木幊?

類==屬性 方法
屬性來源于類的狀態(tài),方法來源于動作
**類的定義**
public class Student{
int id;?? ??? ??? ?//成員變量
// id是對象級別的,必須先有對象才能訪問;不能直接使用類訪問
String name;
boolean sex;
String adress;
}
創(chuàng)建對象
java中所有new出來的數(shù)據(jù)統(tǒng)一被儲存在堆中,程序猿無法對堆區(qū)數(shù)據(jù)直接操作,只能通過內(nèi)存地址間接操作
成員變量在堆中的對象中存儲

/*
關(guān)于系統(tǒng)默認(rèn)值
基本數(shù)據(jù)類型
byte,short,int , long ? ? 0
float , double ? ? 0.0
boolean false
char ?\u0000
引用數(shù)據(jù)類型:null
*/
?面向?qū)ο蟮姆庋b性指的是:
1.屬性私有化
2.對外提供公開的setter ? ?getter
set get 方法的方法名必須應(yīng)該遵循規(guī)范

?

**構(gòu)造函數(shù)(構(gòu)造方法,構(gòu)造器,Constructor)**


1.構(gòu)造方法語句:
【修飾符列表】構(gòu)造方法名(形式參數(shù)列表){
方法體;
}
2.構(gòu)造方法的方法名必須和類名一致
3.構(gòu)造方法的作用?
第一,創(chuàng)建對象
第二,給成員變量賦值(初始化成員變量)

4.構(gòu)造方法應(yīng)該如何調(diào)用?
new ?構(gòu)造方法名(實參);在堆中開辟空間儲存對象
5.如果一個類沒有提供任何構(gòu)造方法,系統(tǒng)默認(rèn)提供無參數(shù)構(gòu)造方法
如果一個類已經(jīng)手動的提供了構(gòu)造方法,那么系統(tǒng)不會再提供任何構(gòu)造方法
6.成員變量到底什么時候賦值?
只有在調(diào)用構(gòu)造方法的時候,才給成員變量賦值

構(gòu)造方法和普通方法一樣可以重載,構(gòu)造方法不具有任何返回值類型,即沒有返回值,不能有void
對象沒有更多的引用指向,則變成垃圾

**this關(guān)鍵字**
1.this是什么?
this是一個引用類型
在堆中的每一個java對象上都有this
this保存內(nèi)存地址指向自身
2.this能用在哪些地方?
第一,this可以用在成員方法中
第二,this可以用在構(gòu)造方法中
語法:this(實參);
通過一個構(gòu)造方法去調(diào)用另一個構(gòu)造方法
目的:代碼重用;
this(實參);必須出現(xiàn)在構(gòu)造方法中的第一行
this可以區(qū)分成員變量和局部變量
this不能用在靜態(tài)方法中
靜態(tài)方法的執(zhí)行根本不需要Java對象的存在,直接使用類名.的方式訪問
而this代表的是當(dāng)前對象,所以靜態(tài)方法中根本沒有this
**static關(guān)鍵字**
1.static修飾的變量叫“靜態(tài)變量”
2.static修飾的方法叫“靜態(tài)方法”
3.static還可以定義靜態(tài)語句塊
static定義的靜態(tài)語句塊在類加載階段執(zhí)行,并且只執(zhí)行一次,是自上而下的順序的執(zhí)行
關(guān)于實例語句塊
每一次調(diào)用構(gòu)造方法之前會執(zhí)行一次
實例語句塊執(zhí)行順序也是自上而下
? ?
一般情況下工具類中的方法大部分都是靜態(tài)方法
靜態(tài)方法不用創(chuàng)建對象也能直接訪問該方法?
空的引用去訪問成員的時候會出現(xiàn)空指針異常
靜態(tài)方法可以使用“類名.”方式調(diào)

用,也可以使用“引用.”,即使用的是“引用.”,底層還是用的“類名.”


**什么時候變量聲明成靜態(tài)變量?**
如果這個屬性所有的對象都有,并且這個屬性的值是相同的,則該屬性聲明成靜態(tài)的屬性
靜態(tài)變量:在類的加載階段賦值,并且只賦值一次
成員變量:在創(chuàng)建對象的時候復(fù)賦值?

**單利模式要領(lǐng):**
1.構(gòu)造方法私有化
2.對外提供一個公開的靜態(tài)的獲取當(dāng)前類型對象方法
3.提供一個當(dāng)前類型的靜態(tài)變量 ?

**類的繼承**
引用類的最基本的作用的是:代碼重用
語法:
【修飾符列表】class子類名 extends ?父類名{
類體
}
Java中,;類于類只能單繼承
一個類如果沒有顯示繼承其他類,則類默認(rèn)繼承Object,
Object是Java中的根類

Java語言中子類繼承父類,會將父類中所有的數(shù)據(jù)全部繼承,包括私有的,
但是在子類中無法直接訪問父類中的私有的數(shù)據(jù),但可以間接訪問
注意:構(gòu)造方法無法被子類繼承

**方法的覆蓋**
1.什么時侯方法需要重寫?
? ?? ?如果父類中的方法已經(jīng)無法滿足當(dāng)前子類的業(yè)務(wù)的需求,需要將父類中的方法進(jìn)行重寫
2.子類如果重寫父類中的方法之后,子類對象一定調(diào)用的是重寫之后的方法
3.發(fā)生方法覆蓋的條件:
第一;發(fā)生在具有繼承關(guān)系的兩個類之間
第二;必須具有相同的方法名;相同的返回值類型;相同的參數(shù)列表
第三;重寫的方法不能比被重寫的方法擁有更低的訪問權(quán)限?
第四;重寫的方法不能比被重寫的方法拋出更寬泛的異常(異常機(jī)制)
第五;私有的方法不能被覆蓋
第六;構(gòu)造方法無法被覆蓋,因為構(gòu)造方法不能被繼承
第七;靜態(tài)的方法不存在覆蓋
第八;覆蓋指的是成員方法,和成員變量無關(guān)
4.繼承最基本的作用:代碼重寫;
? ?繼承最重要的作用:方法可以重寫

?**多態(tài)**
Java中向上轉(zhuǎn)型和向下轉(zhuǎn)型
1.向上轉(zhuǎn)型(upcasting);子---------》父、
2.向下轉(zhuǎn)型(downcasting);父-------》子;
注意:無論是向上轉(zhuǎn)型還是向下轉(zhuǎn)型,兩個類之間必須要有繼承關(guān)系
多態(tài)的作用:
1.使用多態(tài)可以使代碼的耦合度降低
2.項目的擴(kuò)展能力增強(qiáng)


super關(guān)鍵字
1.super不是引用類型,super中儲存的不是內(nèi)存地址,super指向的不是父類對象
2.super代表的是當(dāng)前子類對象中的父類型特征
3.什么時候使用super?
子類和父類中都有某個數(shù)據(jù),如果要在子類中訪問父類中的屬性,需要使用super
4.super可以用在什么地方?
第一;super可以用在成員方法中,不能用在靜態(tài)方法中
第二;super可以用在構(gòu)造方法中

super在構(gòu)造方法中;
語法;super(實參);
作用;通過子類的構(gòu)造方法去調(diào)用父類的構(gòu)造方法;
語法規(guī)則;一個構(gòu)造方法第一行如果沒有this();也沒有顯示的去調(diào)用super();
系統(tǒng)會默認(rèn)調(diào)用super();
super的調(diào)用只能放在構(gòu)造方法的第一行;不能和this共存
super()調(diào)用了父類中的構(gòu)造方法,但是不會創(chuàng)建父類對象

單例模式缺點:無法被繼承
1.構(gòu)造方法私有化
final關(guān)鍵字 ?
1.final修飾的類無法被繼承
2. ? ? ? ? ? ? ? ? 方法
?3.final修飾的局部變量,一旦被賦值,不可被改變
4.final修飾的成員變量必須手動初始化
5.final 修飾的成員變量一般和static聯(lián)用

**抽象類**
1. 如何定義抽象類?
class關(guān)鍵字前加abstract
2.抽象類無法被實例化
抽象類無法創(chuàng)建對象
3.雖然抽象類沒有辦法實例化,但是抽象類也有構(gòu)造方法,該構(gòu)造方法是給子類創(chuàng)建對象用的
4.抽象類中可以定義抽象方法
抽象方法的語法:在方法的修飾符列表中添加abstract關(guān)鍵字,并且抽象方法應(yīng)該以 “ ; ”結(jié)束,不能帶有“{ ?}”
例如;public abstract void ?m1();
5.抽象類中不一定有抽象方法,但是抽象方法必須出現(xiàn)在抽象類中;
6.一個非抽象的類繼承抽象類,必須將抽象類中的抽象方法覆蓋,實現(xiàn),重寫
抽象類不能被final修飾
抽象方法不能被final修飾

final修飾的引用類型,該引用不可再重新指向其他的Java對象
但是final修飾的引用,該引用指向的對象的屬性是可以修改的
?

來源:https://www./content-1-314101.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    在线观看视频日韩成人| 日韩精品视频高清在线观看| 国产一级特黄在线观看| 国产精品一区二区三区欧美| 亚洲精品一区三区三区| 九九蜜桃视频香蕉视频| 欧美一区二区三区播放| 成人国产激情福利久久| 国产av大片一区二区三区| 精品国产亚洲一区二区三区| 国产又粗又猛又长又黄视频| 日韩性生活片免费观看| 区一区二区三中文字幕| 久久热麻豆国产精品视频| 国产av熟女一区二区三区四区| 亚洲一区二区三区三区| 国产偷拍盗摄一区二区| 成人精品国产亚洲av久久| 亚洲美女国产精品久久| 亚洲精品日韩欧美精品| 国产午夜福利片在线观看| 视频一区二区三区自拍偷| 五月激情五月天综合网| 国产精品一区二区视频成人| 冬爱琴音一区二区中文字幕| 中文字幕免费观看亚洲视频| 日本不卡在线视频中文国产| 老熟女露脸一二三四区| 国产一区二区熟女精品免费| 福利视频一区二区在线| 欧美日韩欧美国产另类| 日本少妇三级三级三级| 亚洲男人的天堂就去爱| 国产又大又黄又粗又免费| 日韩特级黄色大片在线观看| 麻豆剧果冻传媒一二三区| 99久久婷婷国产亚洲综合精品| 初尝人妻少妇中文字幕在线| 国产一级性生活录像片| 欧美不雅视频午夜福利| 在线视频三区日本精品|