類是對(duì)某一類事物的描述,是抽象的型宙,概念上的定義;
對(duì)象則是實(shí)際存在的屬該類事物的具體個(gè)體伦吠,因而也叫做實(shí)例化妆兑;
如:
汽車設(shè)計(jì)圖(汽車類)制成了第一輛汽車(汽車對(duì)象)、第二輛汽車(汽車對(duì)象)毛仪、第三輛汽車(汽車對(duì)象)搁嗓!
汽車設(shè)計(jì)圖描述汽車怎樣制造,定義了汽車!
因此汽車設(shè)計(jì)圖就是類箱靴,汽車就是對(duì)象
類描述了對(duì)象的屬性和對(duì)象的行為
對(duì)于圓柱體來說腺逛,圓柱體類的成員變量有pi,radius與height,而成員方法則有計(jì)算底面積的area()
與計(jì)算體積的volume()。
類的基本結(jié)構(gòu):
[類修飾符]class? 類名稱{
[修飾符]數(shù)據(jù)類型 成員變量名稱衡怀;
[修飾符]返回值的數(shù)據(jù)類型? 方法名(參數(shù)1棍矛,參數(shù)2,參數(shù)3.....參數(shù)n){
}
語句序列
return[表達(dá)式]抛杨;
}
.
.
.?
}
類修飾符有四種:public够委、abstract、final怖现、缺省茁帽。但要注意的是:abstract與final相互對(duì)立,不能同時(shí)應(yīng)用在一個(gè)類的定義中屈嗤。
成員變量:
[修飾符]變量類型? 變量名[=初值]潘拨;
成員方法:
[修飾符]返回值的數(shù)據(jù)類型? 方法名(參數(shù)1,參數(shù)2恢共,參數(shù)3...參數(shù)n){
語句序列战秋;
return[表達(dá)式]璧亚;
}
注:如果不需要傳遞參數(shù)到方法中讨韭,只需將方法名后的圓括號(hào)寫出即可脂信,不必填寫任何內(nèi)容。另外透硝,若方法
沒有返回值狰闪,則返回值的數(shù)據(jù)類型應(yīng)為void,且return語句可以省略濒生。
成員變量的修飾符有:public,private,protected,缺省,final,static,transient,volatile
成員方法的修飾符有:public,private,protected,缺省,final,static,abstract,synchronized,nativew2
方法在類定義內(nèi)部被調(diào)用埋泵,不必指出成員名稱前的對(duì)象名稱
在類定義外部被調(diào)用,需要用“指向?qū)ο蟮淖兞?成員名”這樣的語法來訪問對(duì)象中的成員
方法可以在類定義的內(nèi)部罪治,被另一種方法調(diào)丽声,例如:
double area(){
return pi*radius*radius;
}
double volume(){
return area()*height;//(在這里就是調(diào)用了area方法,然后用到了volume方法中)
}
以變量為參數(shù)調(diào)用方法:
若方法中有參數(shù)觉义,即
void Cylinnder(double p,int h,double r){
}
p,h,r為局部變量雁社,即方法中定義的是局部變量,局部變量一旦離開此方法晒骇,便會(huì)失去作用
若通過方法調(diào)用霉撵,將外部傳入的參數(shù)賦值給類的成員變量,方法的形式參數(shù)(形式參數(shù)就是方法括號(hào)內(nèi)部的東西)與成員變量同名時(shí)(一樣)洪囤,則需用this關(guān)鍵字來標(biāo)識(shí)成員變量徒坡!當(dāng)成員變量與方法中的局部變量同名時(shí),在方法內(nèi)對(duì)同名變量的訪問是指那個(gè)局部變量瘤缩。所以當(dāng)特指成員變量時(shí)喇完,要用this關(guān)鍵字。
this.radius(成員變量)=radius;
當(dāng)參數(shù)是基本數(shù)據(jù)類型時(shí)款咖,是傳值的方式調(diào)用何暮;當(dāng)參數(shù)是引用變量時(shí),是傳址方式調(diào)用铐殃。