封装
封装
封装 类,该露的露,该藏的藏,程序要做到“高内聚低耦合”,高内聚就是类的内部数据操作细节自己完成不允许外部干涉;低耦合指仅暴露少量的方法给外部使用。
封装大都是对属性进行封装,方法该怎么写就怎么写。
具体操作为:
- 设置属性时使用private将属性设为本类私有,类外没有修改权限
- 类内设置公共方法提供给外部调用(get)、修改(set)属性的途径
- ALT+INSERT可以自动生成对属性的get set方法。
重点一句话:属性私有,get/set
封装:↓
package OOP02.Demon1;
public class Student {
//属性的私有
private String name;
private int age;
private char sexual;
//提供一些可以操作这个属性的方法
//提供一些public的get和set方法
//get 获得这个属性值
public String getName(){
return this.name;
}
//set 更改这个属性值
public void setName(String name){
this.name=name;
}
public int getAge() {
return age;
}
public void setAge(int age) { //改变方法体,避免不可法修改
if (age>=0 && age<=120){this.age = age;}
else {this.age= 3;}
//若在正常年龄区间,年龄正常修改,若不正常将年龄设置为三岁。
}
}
外部调用:↓
package OOP02;
import OOP02.Demon1.Student;
public class Application {
public static void main(String[] args) {
Student s1 = new Student();
s1.getName();
System.out.println(s1.getName()); //null
s1.setName("linyang");
System.out.println(s1.getName()); //linyang
//==================================================
s1.setAge(90); //合法的年龄
System.out.println(s1.getAge()); //90
s1.setAge(150);//不合法的年龄
System.out.println(s1.getAge());//3
}
}
封装的意义在于,能够通过对公共方法的修改,避免一些对属性不合法的修改,隐藏代码的实现细节,统一接口,提高系统可维护性。
浙公网安备 33010602011771号