大家好,又见面了,我是你们的朋友全栈君。
在面向对象程式设计方法中,封装(英文名称:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性,这个就是Java封装方法。 下面是封装方法的示例代码:
public class EncapsulationDemo {
private int number;
private int clss;
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public int getClss() {
return clss;
}
public void setClss(int clss) {
this.clss = clss;
}
}
上面示例代码中,将number和clss属性设置为私有的,只能本类才能访问,其他类都访问不了,如此就对信息进行了隐藏,采用‘this’关键字是为了解决实例变量(private int number)和局部变量(setNumber (int number)中的number变量)之间发生的同名的冲突,Java中的‘this’关键字‘this’关键字代表当前对象;this.属性(操作当前对象的属性);this.方法(调用当前对象的方法)。以上实例中public方法是外部类访问该类成员变量的入口。通常情况下,这些方法被称为‘getter’和‘setter’方法。因此,任何要访问类中私有成员变量的类都要通过这些‘getter’和‘setter’方法。创建‘getter ’和 ‘setter’方法可以手动创建,也可以快捷键快速自动创建,用快捷键快速自动创建可以提高效率,操作方法是按住快捷键(Alt+Shift+S),然后选择(Generate getters and Setters),就会弹出一个框,然后勾选,直接按确定OK就可以了。下面是图例显示:
实现封装方法:第一是将修改属性的可见性来限制对属性的访问(一般限制为private);第二是要对每个值属性提供对外的公共方法访问,也就是创建‘getter ’和 ‘setter’方法(将实例变量的首字母大写,在前面添加‘get’或者‘set’, 变成‘getter ’和 ‘setter’方法名)。封装方法优势是不仅能够减少耦合;类内部的结构可以自由修改;还可以对成员变量进行更精确的控制;隐藏信息,实现代码细节,隐藏信息是为了防止代码信息和数据被外部类定义的代码随机访问而造成出错。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/156932.html原文链接:https://javaforall.cn