小編給大家分享一下java編程語(yǔ)言中面向?qū)ο笫鞘裁匆馑?,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)專注于汝城網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供汝城營(yíng)銷(xiāo)型網(wǎng)站建設(shè),汝城網(wǎng)站制作、汝城網(wǎng)頁(yè)設(shè)計(jì)、汝城網(wǎng)站官網(wǎng)定制、小程序定制開(kāi)發(fā)服務(wù),打造汝城網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供汝城網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。
java面向?qū)ο笫鞘裁?
Java面向?qū)ο笤斀?/strong>
前言:接觸項(xiàng)目開(kāi)發(fā)也有很長(zhǎng)一段時(shí)間了,最近開(kāi)始萌發(fā)出想回過(guò)頭來(lái)寫(xiě)寫(xiě)以前學(xué)過(guò)的基礎(chǔ)知識(shí)的想法。一是原來(lái)剛開(kāi)始學(xué)習(xí)接觸編程,一個(gè)人跌跌撞撞摸索著往前走,初學(xué)的時(shí)候很多東西理解的也懵懵懂懂,后來(lái)實(shí)踐的多了,有些東西才慢慢清楚;二是經(jīng)過(guò)一定的實(shí)踐之后,反過(guò)頭來(lái)再去學(xué)習(xí)一些基礎(chǔ)東西才能夠理解的更透徹;三是有些東西基礎(chǔ)但是確很重要,是值得好好搞一搞的。
1、面向?qū)ο?/strong>
面向?qū)ο螅∣bject Oriented)是一種新興的程序設(shè)計(jì)方法,或者是一種新的程序設(shè)計(jì)規(guī)范(paradigm),其基本思想是使用對(duì)象、類(lèi)、繼承、封裝、多態(tài)等基本概念來(lái)進(jìn)行程序設(shè)計(jì)。從現(xiàn)實(shí)世界中客觀存在的事物(即對(duì)象)出發(fā)來(lái)構(gòu)造軟件系統(tǒng),并且在系統(tǒng)構(gòu)造中盡可能運(yùn)用人類(lèi)的自然思維方式。
2、對(duì)象
對(duì)象是系統(tǒng)中用來(lái)描述客觀事物的一個(gè)實(shí)體,它是構(gòu)成系統(tǒng)的一個(gè)基本單位。一個(gè)對(duì)象由一組屬性和對(duì)這組屬性進(jìn)行操作的一組服務(wù)組成。
類(lèi)的實(shí)例化可生成對(duì)象,一個(gè)對(duì)象的生命周期包括三個(gè)階段:生成、使用、消除。
當(dāng)不存在對(duì)一個(gè)對(duì)象的引用時(shí),該對(duì)象成為一個(gè)無(wú)用對(duì)象。Java的垃圾收集器自動(dòng)掃描對(duì)象的動(dòng)態(tài)內(nèi)存區(qū),把沒(méi)有引用的對(duì)象作為垃圾收集起來(lái)并釋放。當(dāng)系統(tǒng)內(nèi)存用盡或調(diào)用System.gc( )要求垃圾回收時(shí),垃圾回收線程與系統(tǒng)同步運(yùn)行。
3、類(lèi)
類(lèi)是具有相同屬性和方法的一組對(duì)象的集合,它為屬于該類(lèi)的所有對(duì)象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和方法兩個(gè)主要部分。在面向?qū)ο蟮木幊陶Z(yǔ)言中,類(lèi)是一個(gè)獨(dú)立的程序單位,它應(yīng)該有一個(gè)類(lèi)名并包括屬性和方法兩個(gè)主要部分。
Java中的類(lèi)實(shí)現(xiàn)包括兩個(gè)部分:類(lèi)聲明和類(lèi)體。
類(lèi)聲明
[public][abstract|final] class className [extends superclassName] [implements interfaceNameList]{……}
其中,修飾符public,abstract,final 說(shuō)明了類(lèi)的屬性,className為類(lèi)名,superclassName為類(lèi)的父類(lèi)的名字,interfaceNameList為類(lèi)所實(shí)現(xiàn)的接口列表。
類(lèi)體
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 }//成員方法 }
成員變量限定詞的含義:
? static: 靜態(tài)變量(類(lèi)變量)
? final: 常量;transient: 暫時(shí)性變量,用于對(duì)象存檔,用于對(duì)象的串行化
? volatile: 貢獻(xiàn)變量,用于并發(fā)線程的共享
方法的實(shí)現(xiàn)也包括兩部分內(nèi)容:方法聲明和方法體。
方法聲明
方法聲明中的限定詞的含義:
? static: 類(lèi)方法,可通過(guò)類(lèi)名直接調(diào)用
? abstract: 抽象方法,沒(méi)有方法體
? final: 方法不能被重寫(xiě)
? native: 集成其它語(yǔ)言的代碼
? synchronized: 控制多個(gè)并發(fā)線程的訪問(wèn)
方法聲明包括方法名、返回類(lèi)型和外部參數(shù)。其中參數(shù)的類(lèi)型可以是簡(jiǎn)單數(shù)據(jù)類(lèi)型,也可以是復(fù)合數(shù)據(jù)類(lèi)型(又稱引用數(shù)據(jù)類(lèi)型)。
對(duì)于簡(jiǎn)單數(shù)據(jù)類(lèi)型來(lái)說(shuō),java實(shí)現(xiàn)的是值傳遞,方法接收參數(shù)的值,但不能改變這些參數(shù)的值。如果要改變參數(shù)的值,則用引用數(shù)據(jù)類(lèi)型,因?yàn)橐脭?shù)據(jù)類(lèi)型傳遞給方法的是數(shù)據(jù)在內(nèi)存中的地址,方法中對(duì)數(shù)據(jù)的操作可以改變數(shù)據(jù)的值。
方法體
方法體是對(duì)方法的實(shí)現(xiàn),它包括局部變量的聲明以及所有合法的Java指令。方法體中聲明的局部變量的作用域在該方法內(nèi)部。若局部變量與類(lèi)的成員變量同名,則類(lèi)的成員變量被隱藏。
為了區(qū)別參數(shù)和類(lèi)的成員變量,我們必須使用this。this用在一個(gè)方法中引用當(dāng)前對(duì)象,它的值是調(diào)用該方法的對(duì)象。返回值須與返回類(lèi)型一致,或者完全相同,或是其子類(lèi)。當(dāng)返回類(lèi)型是接口時(shí),返回值必須實(shí)現(xiàn)該接口。
構(gòu)造方法
? 構(gòu)造方法是一個(gè)特殊的方法。Java 中的每個(gè)類(lèi)都有構(gòu)造方法,用來(lái)初始化該類(lèi)的一個(gè)對(duì)象。
? 構(gòu)造方法具有和類(lèi)名相同的名稱,而且不返回任何數(shù)據(jù)類(lèi)型。
? 重載經(jīng)常用于構(gòu)造方法。
? 構(gòu)造方法只能由new運(yùn)算符調(diào)用
4、面向?qū)ο蟮幕咎匦?/strong>
封裝
封裝性就是盡可能的隱藏對(duì)象內(nèi)部細(xì)節(jié),對(duì)外形成一道邊界,只保留有限的接口和方法與外界進(jìn)行交互。封裝的原則是使對(duì)象以外的部分不能隨意的訪問(wèn)和操作對(duì)象的內(nèi)部屬性,從而避免了外界對(duì)對(duì)象內(nèi)部屬性的破壞。
可以通過(guò)對(duì)類(lèi)的成員設(shè)置一定的訪問(wèn)權(quán)限,實(shí)現(xiàn)類(lèi)中成員的信息隱藏。
? private:類(lèi)中限定為private的成員,只能被這個(gè)類(lèi)本身訪問(wèn)。如果一個(gè)類(lèi)的構(gòu)造方法聲明為private,則其它類(lèi)不能生成該類(lèi)的一個(gè)實(shí)例。
? default:類(lèi)中不加任何訪問(wèn)權(quán)限限定的成員屬于缺省的(default)訪問(wèn)狀態(tài),可以被這個(gè)類(lèi)本身和同一個(gè)包中的類(lèi)所訪問(wèn)。
? protected:類(lèi)中限定為protected的成員,可以被這個(gè)類(lèi)本身、它的子類(lèi)(包括同一個(gè)包中以及不同包中的子類(lèi))和同一個(gè)包中的所有其他的類(lèi)訪問(wèn)。
? public:類(lèi)中限定為public的成員,可以被所有的類(lèi)訪問(wèn)。
java編程語(yǔ)言中面向?qū)ο笫鞘裁匆馑?/a>
分享路徑:http://chinadenli.net/article8/gppjop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、小程序開(kāi)發(fā)、企業(yè)網(wǎng)站制作、建站公司、自適應(yīng)網(wǎng)站、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)