1、封装是什么?以及为什么要进行封装?
通常状况下能够给成员变量赋值一些合法但不合理的数值,这种状况在编译阶段和运转阶段都不会报错或给出任何的提示信息,此数值尽管合法但与现实生活不符;为了避免上述问题的产生,就需要对成员变量进行密封包装处理来确保该成员变量的合法合理性,这种机制就叫做封装。封装能够被认为是一个维护屏障,避免该类的代码和数据被外部类界说的代码随机拜访。要拜访该类的代码和数据,有必要经过严厉的接口操控。
2、怎么进行封装?
(1)私有化成员变量,运用private关键字润饰;
(2)供给公有的get和set办法,在办法体中进行合理值的判别,运用public关键字润饰;
(3)在结构办法中运用set办法进行合理值的判别;
完成Java封装的过程
1. 修正特点的可见性来约束对特点的拜访(一般约束为private),例如:
这段代码中,将 name 和 age 特点设置为私有的,只能本类才干拜访,其他类都拜访不了,如此就对信息进行了躲藏。
2. 对每个值特点供给对外的公共办法拜访,也便是创立一对赋取值办法,用于对私有特点的拜访,例如:
选用 this 关键字是为了处理实例变量(private String name)和局部变量(setName(String name)中的name变量)之间产生的同名的抵触。
实例
让我们来看一个java封装类的比如:
以上实例中public办法是外部类拜访该类成员变量的进口。
通常状况下,这些办法被称为getter和setter办法。
因而,任何要拜访类中私有成员变量的类都要经过这些getter和setter办法。
经过如下的比如阐明EncapTest类的变量怎样被拜访:
以上代码编译运转成果如下:
Name : James Age : 20