Java封裝講解視頻,基礎(chǔ)知識(shí)學(xué)習(xí)

Java封裝講解視頻,基礎(chǔ)知識(shí)學(xué)習(xí)

長(zhǎng)沙達(dá)內(nèi)教育      2022-05-06 06:42:01     73

Java封裝講解視頻,基礎(chǔ)知識(shí)學(xué)習(xí),在面向?qū)ο蟪淌皆O(shè)計(jì)方法中,封裝(英語(yǔ):Encapsulation)是指一種將抽象性函式接口的實(shí)現(xiàn)細(xì)節(jié)部分包裝、隱藏起來(lái)的方法。封裝可

課程價(jià)格 請(qǐng)咨詢(xún)

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹

在面向?qū)ο蟪淌皆O(shè)計(jì)方法中,封裝(英語(yǔ):Encapsulation)是指一種將抽象性函式接口的實(shí)現(xiàn)細(xì)節(jié)部分包裝、隱藏起來(lái)的方法。

封裝可以被認(rèn)為是一個(gè)保護(hù)屏障,防止該類(lèi)的代碼和數(shù)據(jù)被外部類(lèi)定義的代碼隨機(jī)訪(fǎng)問(wèn)。

要訪(fǎng)問(wèn)該類(lèi)的代碼和數(shù)據(jù),必須通過(guò)嚴(yán)格的接口控制。

封裝最主要的功能在于我們能修改自己的實(shí)現(xiàn)代碼,而不用修改那些調(diào)用我們代碼的程序片段。

適當(dāng)?shù)姆庋b可以讓程式碼更容易理解與維護(hù),也加強(qiáng)了程式碼的安全性。

封裝的優(yōu)點(diǎn)

1.良好的封裝能夠減少耦合。

2.類(lèi)內(nèi)部的結(jié)構(gòu)可以自由修改。

3.可以對(duì)成員變量進(jìn)行更精確的控制。

4.隱藏信息,實(shí)現(xiàn)細(xì)節(jié)。

實(shí)現(xiàn)Java封裝的步驟

1.修改屬性的可見(jiàn)性來(lái)限制對(duì)屬性的訪(fǎng)問(wèn)(一般限制為private),例如:

public?class?Person?{??private?String?name;??private?int?age;}

這段代碼中,將name和age屬性設(shè)置為私有的,只能本類(lèi)才能訪(fǎng)問(wèn),其他類(lèi)都訪(fǎng)問(wèn)不了,如此就對(duì)信息進(jìn)行了隱藏。

2.對(duì)每個(gè)值屬性提供對(duì)外的公共方法訪(fǎng)問(wèn),也就是創(chuàng)建一對(duì)賦取值方法,用于對(duì)私有屬性的訪(fǎng)問(wèn),例如:

public?class?Person{??private?String?name;??private?int?age;??public?int?getAge(){???return?age;??}??public?String?getName(){???return?name;??}??public?void?setAge(int?age){???this.age?=?age;??}??public?void?setName(String?name){???this.name?=?name;??}}

采用this關(guān)鍵字是為了解決實(shí)例變量(private String name)和局部變量(setName(String name)中的name變量)之間發(fā)生的同名的沖突。

實(shí)例

讓我們來(lái)看一個(gè)java封裝類(lèi)的例子:

public?class?EncapTest{???private?String?name;??private?String?idNum;??private?int?age;???public?int?getAge(){???return?age;??}???public?String?getName(){???return?name;??}???public?String?getIdNum(){???return?idNum;??}???public?void?setAge(?int?newAge){???age?=?newAge;??}???public?void?setName(String?newName){???name?=?newName;??}???public?void?setIdNum(?String?newId){???idNum?=?newId;??}}

以上實(shí)例中public方法是外部類(lèi)訪(fǎng)問(wèn)該類(lèi)成員變量的入口。

通常情況下,這些方法被稱(chēng)為getter和setter方法。

因此,任何要訪(fǎng)問(wèn)類(lèi)中私有成員變量的類(lèi)都要通過(guò)這些getter和setter方法。

通過(guò)如下的例子說(shuō)明EncapTest類(lèi)的變量怎樣被訪(fǎng)問(wèn):

public?class?RunEncap{??public?static?void?main(String?args[]){???EncapTest?encap?=?new?EncapTest();???encap.setName("James");???encap.setAge(20);???encap.setIdNum("12343ms");????System.out.print("Name?:?"?+?encap.getName()+????????????????"?Age?:?"+?encap.getAge());??}}以上代碼編譯運(yùn)行結(jié)果如下:Name?:?James?Age?:?20

Java入門(mén)視頻下載:http://www.bjpowernode.com/javavideo/110.html

以上就是長(zhǎng)沙達(dá)內(nèi)教育Java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java封裝講解視頻,基礎(chǔ)知識(shí)學(xué)習(xí)”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€(xiàn)咨詢(xún),有專(zhuān)業(yè)老師隨時(shí)為你服務(wù)。

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過(guò)大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。