- 是一个权限修饰符
- 可以修饰成员变量和成员方法
- 作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问
所以如果使用了private封装,要被其他类使用,需要相应的操作
- 提供"get变量名()"方法,获取成员变量的值,用public修饰
- 提供"set变量名(参数)"的方法,用于设置成员变量的值,方法用public修饰
测试类
package Experience;
public class Learn02 {
public static void main(String[] args){
Student s=new Student();
s.name="小明";
//s.age=17;
s.setAge(22);
s.show();
}
}
学生类
package Experience;
public class Student {
String name;
private int age;
public void show(){
System.out.println(name+","+age);
}
public void setAge(int a){
if(a<=0){
System.out.println("年龄错误");
}else{
age=a;
}
}
public int getAge(){
return age;
}
}
再复杂一点
测试类
package Experience;
public class Learn02 {
public static void main(String[] args){
Student s=new Student();
//s.name="小明";
//s.age=17;
s.setName("小红");
s.setAge(24);
s.show();
System.out.println(s.getName()+"今年多少岁了:"+s.getAge());
}
}
学生类
package Experience;
public class Student {
private String name;
private int age;
public void show(){
System.out.println(name+","+age);
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age){
if(age<=0){
System.out.println("年龄错误");
}else{
this.age=age;
}
}
public int getAge() {
return age;
}
}
好处:
通过方法来控制成员变量,提高了代码的安全性
把代码用方法进行封装,提高了代码的复用性