当没有经过检查就设置内容的时候,这种做法一定是不安全的,所以,每一步的操作都需要进行检查,而检查的第一步是需要让用户看不见操作的东西,在这种情况下,使用private关键字进行封装.
范例:
class Person{
private String name ;
private int age ;
public void tell(){
System.out.println("姓名:" + name + ",年龄:" +age) ;
}
public void setName(String n){
name = n ;
}
public void setAge(int a){
if(a>=0 && a<=100){
age = a ;
}
}
public String getName(){
return name ;
}
public int getAge(){
return age ;
}
}
public class Demo{
public static void main(String args[]){
Person per = new Person();
per.setName("张三") ;
per.setAge(-30) ;
per.tell() ;
}
}
运行结果:
在类的属性中定义setter()和getter()方法的目的是为了设置和取得属性的内容,有时可能暂时没有使用取得的操作,但是还是应该全部提供,在以后定义类的时候,所有的属性都要编写private封装,封装之后的属性如果需要被外部操作,则编写setter()和getter()方法.