十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
我們?cè)贘ava中定義類的時(shí)候,會(huì)定義類的內(nèi)部屬性,考慮到面向?qū)ο缶幊讨械姆忾]性和安全性,我們經(jīng)常會(huì)將內(nèi)部屬性封閉性操作,即對(duì)類中的域變量進(jìn)行封閉操作,即用private來(lái)修飾他們,如此一來(lái)其他外部類則不能對(duì)該變量訪問(wèn)。通過(guò)對(duì)象實(shí)例直接操作內(nèi)部變量是一個(gè)不好的習(xí)慣,一般而言我們只應(yīng)該通過(guò)對(duì)象的方法對(duì)實(shí)例變量操作,這樣不僅安全、也可以為了減少誤操作,直接訪問(wèn)變量沒(méi)有辦法進(jìn)行參數(shù)檢查和控制,而通過(guò)方法修改,可以在方法中檢查。
這樣我們將類變量封閉在類結(jié)構(gòu)內(nèi)部,從而達(dá)到提高數(shù)據(jù)安全性的功能,那么我們?nèi)绾尾僮鬟@些域變量?
我們可以通過(guò)兩種方法,第一中即通過(guò)public方式的構(gòu)造器(或稱構(gòu)造函數(shù)),對(duì)象一實(shí)例化就對(duì)該變量賦值。第二種就是通過(guò)上面提到的set和get方法,這里我舉一個(gè)特定的例子,我定義一個(gè)Person類,該類中有name、age這兩個(gè)私有域變量,然后我定義setname()、getname()、setage()、getage()這四個(gè)方法,通過(guò)這四個(gè)方法來(lái)實(shí)現(xiàn)對(duì)name和age的操作。這樣一來(lái),我不用直接對(duì)Person類中的域變量操作,而是通過(guò)set和get方法間接地操作這些變量,這樣就能提高域變量的安全性,同時(shí)又保證了域變量的封裝型。
package cn.itcast.domain;
import java.util.Date;
public class User {
private String username;private String password;
private String gender;
private Date birthday;
private String email;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
} public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。