1.名词理解
从名字看set是设置的意思而get是获取的意思,所以顾名思义这两个方法是对数据进行设置和获取操作的,我们往往不会单独的使用它们而是用一些修饰词配合使用,比如setname(), getname() ,setage(), getage(),等等
2.使用场景
JAVA面向对象编程中的封闭性和安全性。封闭性即对类中的域变量进行封闭操作,即用private来修饰他们,如此一来其他类则不能对该变量访问。这样我们就将这些变量封闭在了类内部,这样就提高了数据的安全性,当我们想要操作这些域变量怎么办呢?这里我举一个特定的例子,我定义一个Person类,该类中有name、age这两个私有域变量,然后我定义setname()、getname()、setage()、getage()这四个方法,通过这四个方法来实现对name和age的操作。
set和get方法的使用场景,一般来说set和get方法都是对私有域变量进行操作的,所以大多数都是使用在包含特定属性的类实体中。
3.举例说明
我定义了一个数的结点,结点的值左右结点都设为了private因此只能被本类使用,所以通过get()和set()方法实现对他的操作
public class TreeNode {
private Integer data;
private TreeNode zuojiedian;
private TreeNode youjiedian;
public Integer getData() {
return data;
}
public void setData(Integer data) {
this.data = data;
}
public TreeNode getZuojiedian() {
return zuojiedian;
}
public void setZuojiedian(TreeNode zuojiedian) {
this.zuojiedian = zuojiedian;
}
public TreeNode getYoujiedian() {
return youjiedian;
}
public void setYoujiedian(TreeNode youjiedian) {
this.youjiedian = youjiedian;
}
}