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;?
}
}
原文:https://www.cnblogs.com/xdtg/p/12426616.html