java 私有是封装的一种形式

来源:互联网 发布:2015年十大网络流行语 编辑:程序博客网 时间:2024/05/17 20:32
private:权限修饰符:私有的。用于修饰类中的成员(成员变量、成员函数)
私有的成员变量和成员函数(方法)只在本类中有效。

将age私有化以后,a类以外的其他类(例如b类),即使在b类中建立了a类中的对象也不能访问a类中的私有成员。
所以类PersonDemo不能直接访问age。

为了让其他访问一个类的私有变量,可以通过创建set和get的函数来提供访问私有变量的方式。利用set方法改变
age的值时,调用该方法的对象中的age的值将被改变。要非常注意的一点是,改变的不是private int age里的age值,
而是改变的某个对象中的age的值。每个对象被建立时,age在堆中的初始化值均为0。

成员变量有默认初始化值,即使没被赋值,也可以直接参与运算,而局部变量是没有默认初始化值得,必须先赋值
再参与运算。堆中的变量都是有初始化值的。

注意:私有仅是封装的一种表现形式。

之所以对外提供访问方式,就因为可以在访问方式中加入逻辑判断语句。

对方问的数据进行操作,提高代码的健壮性。

class Person{private int age;public void setAge(int a){if(a>0 && a<150){age=a;}elseSystem.out.println("illegal age");}public int getAge(){return age;}public void speak(){System.out.println(age);}}class PersonDemo{public static void main(String[] args){Person p=new Person();p.setAge(180);}}


0 0
原创粉丝点击