要在公有类而非公有域中使用访问方法
核心意思就是:访问成员变量要用setter和getter方法。
为啥子咧?
下面是在User类中要对属性age进行赋值,一顿赋值我想让你的年龄是多少岁都行,这有点儿不科学啊。
class User {
public int age;
public static void main(String[] args) {
new User().age = 1000;
}
}
所以加了setter方法以后,我就可以对赋值进行判断了。这样子就避免了非法的赋值输入。
class User {
public int age;
public void setAge(int age) {
if (age<0 || age>100) throw new RuntimeException("年龄输入不合法");
this.age = age;
}
public static void main(String[] args) {
new User().setAge(1000); //java.lang.RuntimeException: 年龄输入不合法
}
}