面向对象的三大特征之封装
时间:2021-01-24 00:59:21
收藏:0
阅读:28
封装是指把一个对象的状态信息(也就是属性)隐藏在对象内部,不允许外部对象直接访问对象的内部信息。但是可以通过该类所提供的方法来实现对内部信息的操作和访问。就好像我们看不到挂在墙上的空调的内部的零件信息(也就是属性),但是可以通过遥控器(方法)来控制空调。如果属性不想被外界访问,我们大可不必提供方法给外界访问。但是如果一个类没有提供给外界访问的方法,那么这个类也没有什么意义了。就好像如果没有空调遥控器,那么我们就无法操控空凋制冷,空调本身就没有意义了(当然现在还有很多其他方法 ,这里只是为了举例子)。
public class Student {
private int id;//id属性私有化
private String name;//name属性私有化
//获取id的方法
public int getId() {
return id;
}
//设置id的方法
public void setId(int id) {
this.id = id;
}
//获取name的方法
public String getName() {
return name;
}
//设置name的方法
public void setName(String name) {
this.name = name;
}
}
封装是面向对象编程语言对客观世界的模拟,客观世界里的Field都是被隐藏在对象内部的,外界无法直接操作和修改。就比如说Person对象的age Field,只能随着岁月的流逝,age Field才会增加,通常不能随意修改Person对象的age Field。
对一个类或对象实现良好的封装,可以实现以下目的:
- 隐藏类的实现细节;
- 让使用者只能通过事先预定的方法来访问数据,从而可以在该方法里加入控制逻辑,限制对Field的不合理访问;
- 可进行数据检查,从而有利于保证对象信息的完整性;
- 便于修改,提高代码的可维护性。
封装需要通过使用Java提供的访问控制符private来实现。
原文:https://www.cnblogs.com/yazhouasu/p/14319119.html
评论(0)