Java oop要背知識(shí)1:((b)a1).aa(),向下轉(zhuǎn)型類(lèi),對(duì)象,面向?qū)ο?,多態(tài),final,修飾符

什么是類(lèi):用來(lái)描述現(xiàn)實(shí)中事物的java類(lèi)
什么是對(duì)象:現(xiàn)實(shí)中存在的事物
面向?qū)ο? 將現(xiàn)實(shí)中的對(duì)象轉(zhuǎn)化成類(lèi)的過(guò)程稱(chēng)為面向?qū)ο蟆?/p>
訪問(wèn)修飾符:區(qū)分內(nèi)容的訪問(wèn)權(quán)限
public:任何位置可以進(jìn)行訪問(wèn)
protected:同一個(gè)包,具有父子關(guān)系的可以進(jìn)行訪問(wèn)
缺省的(什么都不寫(xiě)):在同一包下可以進(jìn)行訪問(wèn)
private:同一個(gè)類(lèi)里可以進(jìn)行訪問(wèn)
方法的分類(lèi)四種:
無(wú)參無(wú)返、有參無(wú)返、有參有返、無(wú)參有返
public void a(){//無(wú)參無(wú)返
}
public void a(int num){//有參無(wú)返
}
public int a(int num){//有參有返
return 1;
}
public int a(){//無(wú)參有返
return 1;
}
//get和set方法:為了給私有屬性(private進(jìn)行修飾的)進(jìn)行賦值和限制操作
private int num;//私有屬性
public int getNum(){//get方法
return this.num;
}
public void setNum(int num){//set方法
this.num=num;
}
-------------------------------
多態(tài):同一功能根據(jù)傳入對(duì)象的不同執(zhí)行不同的操作
多態(tài)分為靜態(tài)多態(tài)和動(dòng)態(tài)多態(tài)
靜態(tài)多態(tài)也就是重載
動(dòng)態(tài)多態(tài)必須擁有的三個(gè)必要條件:
1.擁有繼承的關(guān)系
2.子類(lèi)重寫(xiě)父類(lèi)的方法
3.擁有向上轉(zhuǎn)型(父類(lèi)對(duì)象指向子類(lèi)對(duì)象)
向下轉(zhuǎn)型:,
在父類(lèi)引用指向子類(lèi)對(duì)象后,如果想要使用子類(lèi)對(duì)象的特有方法就必須向下轉(zhuǎn)型,向下轉(zhuǎn)型必須擁有繼承關(guān)系
a a1=new b();//父類(lèi)引用指向子類(lèi)對(duì)象
((b)a1).aa()//想要使用b獨(dú)有的aa方法就先強(qiáng)轉(zhuǎn),“(b)”就表明“是b的”
final:
修飾變量的時(shí)候?qū)⒆優(yōu)槌A浚瑹o(wú)法再對(duì)其進(jìn)行賦值
修飾方法的時(shí)候該方法無(wú)法被重寫(xiě)
修飾類(lèi)的時(shí)候該類(lèi)無(wú)法被繼承