Java | 封装
Java的三大特性
java是一个面向对象的语言,所以java也有面向对象语言的三大特性:继承,封装,多态,任何一个java项目,都会用到这三种特性,所以掌握好这三大特性非常的重要。
封装
我们为什么要使用封装?
我们使用封装是因为程序的安全性,让用户知道的才暴露出来,不需要让用户知道的全部隐藏起来,这就是封装,封装就是把对象的属性和操作(方法)结合为一个独立的个体,并尽可能的隐藏对象的的内部实现的细节。
我们使用封装的目的是什么?
我们程序的设计要求是”高内聚,低耦合“,高内聚就是类的内部数据操作(方法)细节自己完成,不允许外部干涉,低耦合是仅暴露少量的方法给外部使用,尽量方便外部调用。
封装有什么优点?
1、 提高代码的安全性。
2、提高代码的复用性。
3、“高内聚”:封装细节,便于修改内部代码,提高可维护性
4、“低耦合”:简化外部调用,便于调用者使用,便于扩展和协作。
封装的实现
Java是使用“访问控制符”来控制啸此细节需要封装的,啸些细节需要暴露的,Java中有4种访问控制符“,分别为private,default,protected,public,它们说明了面向对象的封装性,所以我们编写代码的时候,尽可以让访问权限降到最低,从而提高安全性。
下面是这4个访问控制符的权限:
- private 表示私有,只有自己的类能访问。
- default表示没有修饰符修饰,只有同一个包的类能访问。(默认访问控制符)
- protected表示可以被同一个包的类以及其它包中的子类访问。
- public 表示可以被该项目的所有包中的所有类访问。
例:
封装的细节
1、一般使用private的访问权限。
2、提供相应的get/set方法来访问相应的属性方法,这些方法通常是用public 来修饰的,以提供对属性的赋值和读取操作。boolean的get主法,一般是用is来开头的。
3、一此只用于本类的辅助性方法,可以用private修饰,希望其它类调用的方法用public修饰。
例:
public class Student {
//私有属性方法
private int id;
private String name;
private int age;
private boolean flag;
//get/set方法
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//boolean的get方法
public boolean isFlag() {
return flag;
}
public void setFlag(boolean flag) {
this.flag = flag;
}
}
关注公众号,随时获取最新资讯
细节决定成败!
个人愚见,如有不对,恳请斧正!