3.2 Java語(yǔ)言的面向?qū)ο筇匦?BR> 3.2.1 類
類是java中的一種重要的復(fù)合數(shù)據(jù)類型,是組成java程序的基本要素。它封裝了一類對(duì)象的狀態(tài)和方法,是這一類對(duì)象的原形。一個(gè)類的實(shí)現(xiàn)包括兩個(gè)部分:類聲明和類體。
1.類聲明:
[public][abstract|final] class className [extends superclassName] [implements interfaceNameList]
{……}
其中,修飾符public,abstract,final 說(shuō)明了類的屬性,className為類名,superclassName為類的父類的名字,interfaceNameList為類所實(shí)現(xiàn)的接口列表。
2.類體
類體定義如下:
class className
{[public | protected | private ] [static]
[final] [transient] [volatile] type
variableName; //成員變量
[public | protected | private ] [static]
[final | abstract] [native] [synchronized]
returnType methodName([paramList]) [throws exceptionList]
{statements} //成員方法
}
3.成員變量
成員變量的聲明方式如下:
[public | protected | private ] [static]
[final] [transient] [volatile] type
variableName; //成員變量
其中,
static: 靜態(tài)變量(類變量);相對(duì)于實(shí)例變量
final: 常量
transient: 暫時(shí)性變量,用于對(duì)象存檔
volatile: 貢獻(xiàn)變量,用于并發(fā)線程的共享來(lái)源:www.examda.com
4.成員方法
方法的實(shí)現(xiàn)包括兩部分內(nèi)容:方法聲明和方法體。
[public | protected | private ] [static]
[final | abstract] [native] [synchronized]
returnType methodName([paramList])
[throws exceptionList] //方法聲明
{statements} //方法體
方法聲明中的限定詞的含義:
static: 類方法,可通過(guò)類名直接調(diào)用
abstract: 抽象方法,沒(méi)有方法體
final: 方法不能被重寫
native: 集成其它語(yǔ)言的代碼
synchronized: 控制多個(gè)并發(fā)線程的訪問(wèn)
方法聲明
方法聲明包括方法名、返回類型和外部參數(shù)。其中參數(shù)的類型可以是簡(jiǎn)單數(shù)據(jù)類型,也可以是復(fù)合數(shù)據(jù)類型(又稱引用數(shù)據(jù)類型)。
對(duì)于簡(jiǎn)單數(shù)據(jù)類型來(lái)說(shuō),java實(shí)現(xiàn)的是值傳遞,方法接收參數(shù)的值,但不能改變這些參數(shù)的值。如果要改變參數(shù)的值,則用引用數(shù)據(jù)類型,因?yàn)橐脭?shù)據(jù)類型傳遞給方法的是數(shù)據(jù)在內(nèi)存中的地址,方法中對(duì)數(shù)據(jù)的操作可以改變數(shù)據(jù)的值。
類是java中的一種重要的復(fù)合數(shù)據(jù)類型,是組成java程序的基本要素。它封裝了一類對(duì)象的狀態(tài)和方法,是這一類對(duì)象的原形。一個(gè)類的實(shí)現(xiàn)包括兩個(gè)部分:類聲明和類體。
1.類聲明:
[public][abstract|final] class className [extends superclassName] [implements interfaceNameList]
{……}
其中,修飾符public,abstract,final 說(shuō)明了類的屬性,className為類名,superclassName為類的父類的名字,interfaceNameList為類所實(shí)現(xiàn)的接口列表。
2.類體
類體定義如下:
class className
{[public | protected | private ] [static]
[final] [transient] [volatile] type
variableName; //成員變量
[public | protected | private ] [static]
[final | abstract] [native] [synchronized]
returnType methodName([paramList]) [throws exceptionList]
{statements} //成員方法
}
3.成員變量
成員變量的聲明方式如下:
[public | protected | private ] [static]
[final] [transient] [volatile] type
variableName; //成員變量
其中,
static: 靜態(tài)變量(類變量);相對(duì)于實(shí)例變量
final: 常量
transient: 暫時(shí)性變量,用于對(duì)象存檔
volatile: 貢獻(xiàn)變量,用于并發(fā)線程的共享來(lái)源:www.examda.com
4.成員方法
方法的實(shí)現(xiàn)包括兩部分內(nèi)容:方法聲明和方法體。
[public | protected | private ] [static]
[final | abstract] [native] [synchronized]
returnType methodName([paramList])
[throws exceptionList] //方法聲明
{statements} //方法體
方法聲明中的限定詞的含義:
static: 類方法,可通過(guò)類名直接調(diào)用
abstract: 抽象方法,沒(méi)有方法體
final: 方法不能被重寫
native: 集成其它語(yǔ)言的代碼
synchronized: 控制多個(gè)并發(fā)線程的訪問(wèn)
方法聲明
方法聲明包括方法名、返回類型和外部參數(shù)。其中參數(shù)的類型可以是簡(jiǎn)單數(shù)據(jù)類型,也可以是復(fù)合數(shù)據(jù)類型(又稱引用數(shù)據(jù)類型)。
對(duì)于簡(jiǎn)單數(shù)據(jù)類型來(lái)說(shuō),java實(shí)現(xiàn)的是值傳遞,方法接收參數(shù)的值,但不能改變這些參數(shù)的值。如果要改變參數(shù)的值,則用引用數(shù)據(jù)類型,因?yàn)橐脭?shù)據(jù)類型傳遞給方法的是數(shù)據(jù)在內(nèi)存中的地址,方法中對(duì)數(shù)據(jù)的操作可以改變數(shù)據(jù)的值。