private关键字用于类中,作用是保护类中的成员变量或者成员方法的数据安全。凡是被private修饰过后的成员变量或成员方法都不能直接被外界调用。需要先在类中进行数值的修饰才可以被外界调用.
private的使用
private 数据类型 变量名;
例: private int age;//表示变量名为age的成员变量已经被private进行修饰了 外界无法直接访问,除非在类中对age这个变量执行数值的修饰
针对private修饰后的变量的获取和修饰,被private修饰后的变量在类中也不能够直接被赋值,需要进行如下操作
1.public 返回值类型 get变量名() 用于获取在类中被private修饰后的变量 该操作有返回值
2.public set变量名(参数) 用于设置在类中被private修饰后的变量的方法
private int age;//变量名age被private修饰 无法直接被外界调用
public int getAge(){//使用get方法获取被private修饰的变量 并返回它
return age;
}
public void setAge(int a){//使用set方法设置被private修饰的变量的方法
//参数a表示当age被外部使用时 外部赋值的值 规定它必须是个整数类型
age =a;
}
当一个被private修饰的变量在类中被使用get和set方法定义完之后,就可以被外部调用了.
s.setAge(20);//被外部变量名为s的对象调用age 直接调用age的set方法 因为set方法定义了一个参数,所以在调用的时候括号内需要给出这个参数的值 否则将采取该变量对应的默认值
//创建student类
public class student{
String name;//创建成员变量name
private int age;//创建了一个age的成员变量 使用private修饰
public int getAge(){//使用get方法获取被private修饰后的age变量
return age;
}
public void setAge(int a ){
//使用set方法对age变量进行方法的定义 这样它被外界调用赋值的时候就会执行该方法下对应的操作
if(a<0 || a>120){
System.out.println("数值有误");
}
else{
age=a;
}
}
//创建成员方法
public void st(){
System.out.println(name+age);
}
}
public class test{
public static void main(String [] args){
student s = new Student();//创建一个student类的对象 对象名为s
//给成员变量赋值
s.name="张三";// 成员变量name没有被private修饰 所以可以直接被调用
s.setAge(20);
/*成员变量age被private修饰了,所以不能直接调用 而是调用age在类中被定义的set方法,并给出一个参数进行传参*/
//调用成员方法
s.st();
}
}
// 输出结果 张三20
如上代码所示,在student类中成员变量age被private修饰了,所以它不能直接被外界调用,而是在类中被定义了get和set方法之后才可以被外界调用。在类中使用get方法获取age,使用set方法定义age被外界调用后的执行方法。当外界给age赋值时并且调用的是set方法,那么就是执行set方法内的操作
这里的set方法只是做了一个判断,并且规定了不同参数下应该执行的操作