面向对象的特征一:封装与隐藏
一、问题的引入:
当我们创建一个类的对象以后,我们可以通过"对象.属性"的方式,对对象的属性进行赋值。这里,赋值操作要受到
属性的数据类型和存储范围的制约。但除此之外,没有其他制约条件。但是,实际问题中,我们往往需要给属性赋值
加入额外限制条件。这个条件就不能在属性声明时体现,我们只能通过方法进行条件的添加。比如说,setLegs
同时,我们需要避免用户再使用“对象.属性”的方式对属性进行赋值。则需要将属性声明为私有的(private)
此时,针对于属性就体现了封装性。
二、封装性的体现:
我们将类的属性私有化(private),同时,提供公共的(public)方法来获取(getXxx)和设 置(setXxx) * *
拓展:封装性的体现:① 如上 ② 单例模式 ③ 不对外暴露的私有方法
/* 练习题
1.创建程序,在其中定义两个类:Person 和 PersonTest 类。
* 定义如下:用 setAge()设置人的合法年龄(0~130),用 getAge()返回人的年龄。
*/
private int age;
public int getAge() { // 获取数值
return age;
}
public void setAge(int age) { //设置数值
this.age = age;
}
public void Age(int age1){
if (age1>0||age1<130){
age=age1;
}else {
System.out.println("你的輸入有问题~");
System.out.println("请重新在进行输入!!!");
}
}
}