咱們先來看看set和get這兩個詞的表面意思,set是設置的意思,而get是獲取的意思,顧名思義,這兩個方法是對數據進行設置和獲取用的。並且,在類中使用set和get方法時,都是在set和get後面跟上一些特定的詞來造成特定意思的方法名,好比setage()和getage(),表示設置年齡和獲取年齡。
而後咱們來了解一下JAVA面向對象編程中的封閉性和安全性。封閉性即對類中的域變量進行封閉操做,即用private來修飾他們,如此一來其餘類則不能對該變量訪問。這樣咱們就將這些變量封閉在了類內部,這樣就提升了數據的安全性,當咱們想要操做這些域變量怎麼辦呢?咱們能夠經過兩種方法,第一中即經過public方式的構造器(或稱構造函數),對象一實例化就對該變量賦值。第二種就是經過上面提到的set和get方法,這裏我舉一個特定的例子,我定義一個Person類,該類中有name、age這兩個私有域變量,而後我定義setname()、getname()、setage()、getage()這四個方法,經過這四個方法來實現對name和age的操做。這樣一來,我不用直接對Person類中的域變量操做,而是經過set和get方法間接地操做這些變量,這樣就能提升域變量的安全性,同時又保證了域變量的封裝型。java
最後說說set和get方法的使用場景,通常來講set和get方法都是對私有域變量進行操做的,因此大多數都是使用在包含特定屬性的類實體中。
如今你明白set和get方法了吧,其實這兩個方法只是類中的setxxx和getxxx方法的總稱。
在從此的開發過程當中,只要你細心體會,結合JAVA中的一些宏觀的知識。set和get方法仍是很容易理解的,或許你還會領會一些其餘的JAVA中的重要理論知識。編程
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;
}
}
User u = new User();
u.setXXX();
u.getXXX();
你想給他賦值就用u.setXXX(); 取這個類的對象的某個值 就get安全