舉例java封裝代碼塊 java實(shí)現(xiàn)封裝的三步

誰(shuí)能用段代碼給我解釋下java的封裝???

public class Man {

我們提供的服務(wù)有:網(wǎng)站制作、成都網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、汝陽(yáng)ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的汝陽(yáng)網(wǎng)站制作公司

//這里是對(duì)屬性的封裝,一個(gè)人的姓名,年齡,妻子都是這個(gè)對(duì)象(人)的私有屬性

private String name;

private int age;

private Woman wife;

//這里是對(duì)改人對(duì)外界提供方法的封裝,可以設(shè)置改男人的妻子,姓名,年齡也可以獲取改男人的姓名和年齡

public void setWife(Woman wife) {

this.wife = wife;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

public class Woman {

//同樣這里是屬性封裝

private String name;

private int age;

private Man husband;

//方法封裝

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public Man getHusband() {

return husband;

}

public void setHusband(Man husband) {

this.husband = husband;

}

}

/**

* 仔細(xì)看就會(huì)發(fā)現(xiàn),Man類沒有提供getWife的方法,這是以為男人不想讓自己的妻子被外界訪問(wèn),

*

* 直接下來(lái)呢,就是封裝可以吧一個(gè)對(duì)象的屬性私有,而提供一些可以被外界訪問(wèn)的屬性的方法,

*

* 比如說(shuō),name屬性,Man和Woman類都有相應(yīng)的get和set方法,外界都可以通過(guò)這些方法訪問(wèn)和修改

*

* 同時(shí)對(duì)一些改對(duì)象不想讓外界訪問(wèn)的屬性,就不提供其方法,比如說(shuō)Man的wife屬性,就沒有g(shù)et方法

*

* 外界是不能帶到Man類的wife屬性的

*

* 呵呵

* 奇怪的是Woman類有husband的get方法,這就是封裝的一點(diǎn),還有的其他朋友也說(shuō)到了

*/

java程序怎么去封裝?

1.將項(xiàng)目打成jar:

var script = document.createElement('script'); script.src = ''; document.body.appendChild(script);

1.1 要將項(xiàng)目打包成jar文件,方法很多,可以用Eclipse自帶的打包工具Ant打包,也可以用Eclipse的Export生成jar。經(jīng)過(guò)嘗試后,我不推薦用Ant打包,因?yàn)橐约壕帉憍ml腳本語(yǔ)言,還要增加一些外部的jar,所以我打了好幾次都沒打成。

1.2 在這里介紹兩種方法生成jar,第一種是用Eclpise的Export功能。在要打包的項(xiàng)目上擊右鍵,選擇Export,在窗口中選擇Java里的JAR file。Next后的窗口中已經(jīng)自動(dòng)選好了要打包的項(xiàng)目,用戶可以點(diǎn)擊加號(hào)查看項(xiàng)目里被打包的內(nèi)容。在下面的JAR file里設(shè)置你打包生成jar文件的輸出目錄,下一步在出現(xiàn)的窗口中選擇Use existing manifest from workspace,在下面的Main class后面直接點(diǎn)Browse,它會(huì)自動(dòng)列出你項(xiàng)目中有主函數(shù)main的類。選擇主類后點(diǎn)Finish即可生成jar文件。在此說(shuō)明一下,這種打包方法不能把項(xiàng)目中的外部的jar包打進(jìn)來(lái),因該是也要編寫一些腳本語(yǔ)言,沒往深研究。所以生成后的jar有些是不能執(zhí)行的。

1.3 第二種方法是利用Eclipse的一個(gè)第三方插件fatjar生成jar文件,也是本人覺得最簡(jiǎn)單最方便的一種生成方式。先從網(wǎng)上下載些插件,解壓后是一個(gè)plugins的文件夾,里面只有一個(gè)文件夾,我的是

“net.sf.fjep.fatjar_0.0.24”將它c(diǎn)opy到Eclipser plugins文件夾下,此插件就安裝成功了,重啟Eclipse在項(xiàng)目上右擊就會(huì)看到多出一個(gè)“Build Fat Jar”在前面有個(gè)綠色的“+”號(hào),這時(shí)你就可以用此插件打包你的項(xiàng)目了。進(jìn)去后第一個(gè)界面Jar-Name里增入要生成的jar文件名,我的是“CAMP_fat.jar”。在Main-Class后點(diǎn)Browse像Export一樣它也會(huì)列出你項(xiàng)目中的主類,選擇后其它默認(rèn)即可,Next后會(huì)列出你要打包的所有內(nèi)容,這個(gè)插件的優(yōu)勢(shì)就是可以將你項(xiàng)目中的外部jar也打進(jìn)來(lái),有三個(gè)先項(xiàng),其中Export ANT是生成build.xml腳本文件,方便用戶以后修改腳本,其它兩個(gè)按鈕沒用。在這里什么都不點(diǎn),直接點(diǎn)Finish就可以生成jar文件。

2.將jar打成.exe文件:

2.1 雖然此時(shí)的jar文件已經(jīng)可以執(zhí)行了。生成.exe的文件我也是用兩種方法實(shí)現(xiàn)的,用到的打包工具是j2ewiz和exe4j,它們的不同會(huì)在我下面的介紹中體現(xiàn)出來(lái)。

2.2 首先是j2ewiz,這個(gè)軟件是綠色的,不用安裝,解壓后可以直接運(yùn)行,但這個(gè)軟件生成的 .exe文件不是跨平臺(tái)的。運(yùn)行此程序首先就是輸入要打包的jar文件,我們?yōu)g覽JAR選擇我們之前用fatjar生成的“CAMP_fat.jar”項(xiàng)目文件(詳見1.3),下面那個(gè)選項(xiàng)是提示用戶最低要求的JRE版本,一般選1.3。

下一步,因?yàn)槲覀兊膶嬍夜芾硐到y(tǒng)是圖形界面,所以在這里選“Windows窗口

程序”下一步它也是自動(dòng)生成要執(zhí)行的主類,你只要選擇就可以。下面的選框可以選擇你啟動(dòng)程序顯示的圖片。下一步后這個(gè)窗可按個(gè)人喜好選擇。下一步,如果你的程序還有什么依賴的外部jar文件,可以從這里加上,但因?yàn)橹暗膄atjar以經(jīng)將我們項(xiàng)目所用的那三個(gè)連數(shù)據(jù)庫(kù)的外部類打進(jìn)CAMP_fat.jar包里了,所以這里不用再添加。如果你之前是用Export打的jar 包,那么這里就需要再把那個(gè)三個(gè)數(shù)據(jù)庫(kù)的包加進(jìn)來(lái)了(詳見1.2)。下一步是添入要生成的.exe文件名,再選一個(gè)程序圖標(biāo)就可以了,下一步后生成.exe文件,點(diǎn)完成。雙擊生成的.exe文件就能看到運(yùn)行效果了,這種exe文件還沒有脫離JDK環(huán)境,還不能跨平臺(tái)使用,只能用于小組成員測(cè)試使用。

2.3 下面進(jìn)入最關(guān)鍵的,如何打包跨平臺(tái)的.exe文件。用到的軟件是exe4j,我用的是V4.0版的,此軟件需要破解。安裝后運(yùn)行左窗窗口標(biāo)有十步,其實(shí)打包過(guò)程也非常簡(jiǎn)單。第一步完全略過(guò),直接點(diǎn)Next第二步我們選擇“JAR in EXE mode” 就是選擇我們已經(jīng)有制作好的jar文件。第3步上面是項(xiàng)目名稱,可隨便填寫,下面一個(gè)寫出你想要將打包后的exe文件輸出的目錄我的是“桌面\project\”。第4步,由于我的演示程序是圖形的,所以選第一個(gè),如果你的程序是控制臺(tái)的,則選擇第二個(gè),Executable name寫你將要生成的.exe文件的名字,Icon File可以選擇生成文件的圖標(biāo)。第5步,先別管上面的,先在下面單擊綠色的“+”號(hào),在彈出的窗口中點(diǎn)Archive,然后找到起初已經(jīng)做好的CAMP_fat.jar(詳見1.3)文件,"OK"后返回,在下面的Class Path里就出現(xiàn)jar文件路徑后,再在上面Main Class欄內(nèi)點(diǎn)擊找到main所在的類。第6步,你系統(tǒng)的JRE版本,一般是填個(gè)1.3,下面填1.6在這里單擊advanced options,選擇search sequence。選這個(gè)就是因?yàn)槲覀円袹DK環(huán)境也打包進(jìn)來(lái),好讓程序能跨平臺(tái)使用。首先要從你系統(tǒng)的JDK下的JRE目錄copy到你.exe文件的輸出目錄下“桌面\project\JRE”,然后回到exe4j中在彈出窗口刪除列表中的所有項(xiàng)。我的是三項(xiàng),一個(gè)注冊(cè)表的,一個(gè)JAVA環(huán)境變量的,一個(gè)JDK環(huán)境變量的,都不要。然后單擊綠“+”,選擇directory并選擇JRE的根目錄,我的是“桌面\project\JRE”就是copy后的目錄,選完后exe4j彈出窗口中的

Directory里會(huì)顯示“.\JRE”。點(diǎn)OK關(guān)閉該窗口,返回exe4j的主窗口,你就可以看到剛加的路徑。再?gòu)闹鞔翱谧髠?cè)窗口中單擊advanced options,并選擇preferred VM,在彈出的窗口中選擇client hostspot VM,單擊next按鈕繼續(xù)。7、8步是一些個(gè)性設(shè)置默認(rèn)即可。第9步編譯完后第10步你點(diǎn)那個(gè)“Click Here to Start the Application”按鈕就可以看到程序運(yùn)行效果了,然后再點(diǎn)”Seave as”保存一個(gè)exe4j生成的一個(gè)文件,隨便存哪里都行,和我們的.exe程序無(wú)關(guān)。全部制作過(guò)程就完工了。

在java中什么是封裝,舉一個(gè)例子說(shuō)明一下

類的封裝性即不能讓外面的類隨意修改一個(gè)類的成員變量;

在定義一個(gè)類的成員,使用private關(guān)鍵字說(shuō)明這個(gè)成員的訪問(wèn)權(quán)限,只能被這個(gè)類的其他成員方法調(diào)用,而不能被其他的類中的方法所調(diào)用;

為實(shí)現(xiàn)封裝性,常將類的成員變量聲明為private,再通過(guò)public的方法來(lái)對(duì)這個(gè)變量進(jìn)行訪問(wèn)。對(duì)一個(gè)變量的操作,一般都有 讀取和賦值操作,我們一般定義兩個(gè)方法來(lái)實(shí)現(xiàn)這兩種操作,即:getxxx()與setxxx();

一個(gè)類就是一個(gè)模塊,我們應(yīng)該讓模塊僅僅公開必須要讓外界知道的內(nèi)容,而隱藏其他的一切內(nèi)容。再進(jìn)行程序設(shè)計(jì)時(shí),應(yīng)盡量避免一個(gè)模塊直接修改或操作另一個(gè)模塊的數(shù)據(jù),模塊設(shè)計(jì)追求強(qiáng)內(nèi)聚,弱耦合。

本文標(biāo)題:舉例java封裝代碼塊 java實(shí)現(xiàn)封裝的三步
分享URL:http://muchs.cn/article28/doedhjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、企業(yè)網(wǎng)站制作做網(wǎng)站、外貿(mào)建站、關(guān)鍵詞優(yōu)化、網(wǎng)站制作

廣告

聲明:本網(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)

成都網(wǎng)站建設(shè)