19、封装

封装

  • 该露的露,该藏的藏

    • 我们程序设计要追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。
  • 封装(数据的隐藏)

    • 通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。
  • 记住这句话就够了: 属性私有, get/set

    让我们来看下例子:

    public class Student {
        //private关键字,为私有
        //属性私有
        private String name;
        private int age;
        //alt + insert 生成set()和get()方法
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            //这里可以对age进行合法判断
            if (age > 120 || age < 0) {
                System.out.println("这。。。输错了吧");
            }
            this.age = age;
        }
    }
    
    public class Application {
        public static void main(String[] args) {
            //实例化对象
            Student student = new Student();
            student.setName("都怪你");
            student.setAge(121);
            System.out.println(student.getName()+" "+student.getAge()+"岁");
        }
    }
    

    我们同样可以通过 alt + insert (OSX : command + n ) 快捷键,快速创建set() 方法和 get() 方法。

属性私有,get() 和 set() 方法的作用:
1. 提高程序的安全性,保护数据
2. 隐藏代码的实现细节
3. 统一接口
4. 提高了系统的可维护性

posted @ 2021-03-26 14:41  都怪你  阅读(38)  评论(0)    收藏  举报
/*复制代码*/