彭晓相

导航

private的应用


/*
问题描述:定义Person的年龄时,无法阻止不合理的数值被设置进来。
解决方案,用private关键字将需要保护的成员变量进行修饰。

一旦使用private进行修饰,那么本类当中任然可以随意访问。
但是!超出了本类范围之外就不能再直接访问了。

必须交setXxx或者getXxx命名规则
对于Getter来说,不能有参数,返回值类型和成员变量对应。
对于Setter来说,不能有返回值,参数类型和成员变量对应。

*/

public class Person {
String name;
private int age;


public void show() {
System.out.println("我叫" + name + "年龄" + age);
}

//这个成员方法,专门用于向age设置数据
public void setAge(int num) {
if (num < 100 && num >= 9) {
age = num;

} else {
System.out.println("数据不合理!");
}

}

public int getAge() {
return age;

}
}

=====================

public class demo03Person {

public static void main(String[] args) {
Person person = new Person();
person.show();

person.name="zly";
// person.age=-20; 直接访问private内容,错误写法!
person.setAge(20);
person.show();
}
}


posted on 2020-08-18 16:22  彭晓相  阅读(166)  评论(0编辑  收藏  举报