package javaoop;
public class Opacity1 {
/*
* 封装性:类的信息隐藏在内部,不允许外部程序直接访问,而是通过类提供的方法实现对隐藏信息的访问和操作;
* 好处:1:只能通过规定的方法访问数据
* 2:隐藏类的实力细节,方便修改和实现
*
* 步骤:1:修改属性的可见性--private
* 2:创建getter或者setter对于用于属性的读写,也可以使用普通方法,但是不推荐;
* 3:在getter或者setter中加入控制语句,合法性判断;
* */
static String name;
private int age;
private float height;
static{
name="anikin";
}
{
age = 23;
height =1.75f;
}
// 访问年龄值
public int getAge(){
return age;
}
// 访问身高值
public float getHeight(){
return height;
}
// 设置年龄之
public void setAge(int newAge){
if(newAge > 22){
age = newAge;
}else{
System.out.println("你没有权限修改,因为你的年龄值小于22");
}
}
// 设置身高
public void setHeight(float newHeight){
height = newHeight;
}
// 主函数入口
public static void main(String[] args){
Opacity1 test1 = new Opacity1();
System.out.println("获得公开name值"+test1.name);
System.out.println("获得私有age值"+test1.getAge());
System.out.println("获得私有height值"+test1.height);
System.out.println("****************************************");
test1.name= "jack";
System.out.println("修改公开name值"+test1.name);
test1.setAge(12);
System.out.println("修改私有age值"+test1.age);
test1.setHeight(1.85f);
System.out.println("修改私有height值"+test1.height);
}
}