Java学习之封装

Java是一种面向对象的编程语言,对于面向对象的编程语言中有一种思想叫做封装。

封装是一种很重要的思想,今天在看教学视频时,觉得视频中的例子很好的解释了封装的重要性,能够提高程序的健壮性。

视频中以人为例子,写了一个类,包含人的属性,比如年龄,名字。

class Person
{
    int age;
    String name;
}
class Demo
{
    Person p = new Person();
    p.age=40    //但是当赋值为-40时,一样行,却违背自然规律,该如何解决?
};
此时类的属性是完全公开,可任意修改,而且无法控制输入的内容,这便影响了程序的健壮性。

若采用封装的思想,便能很好的解决这样的问题。

class Person
{
    private int age;
    private String name;//把属性均改为私有,即只能在本类中使用
    void set_age(int a)
    {
        if(a>=0)
            age=a;
        else
            System.out.println("false");
    }
    int get_age()
    {
        return age;
    }
    void set_name(String n)
    {
    }
    String get_name()
    {
    }//name的部分省略了。。。
}
class Demo
{
    Person p = new Person();
    p.set_age(40)//即使输入-40也不用担心记录进去,从而提高程序健壮性
};
个人感觉,在定义类时,类中的属性尽量封装起来,然后通过set,get来利用或改变属性

原文地址:https://www.cnblogs.com/ZouCharming/p/3868841.html