java-封装

三大特性之—封装:

   封装从字面上来理解就是包装的意思,专业点就是信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。系统的其他对象只能通过包裹在数据外面的已经授权的操作来与这个封装的对象进行交流和交互。也就是说用户是无需知道对象内部的细节(当然也无从知道),但可以通过该对象对外的提供的接口来访问该对象。

   对于封装而言,一个对象它所封装的是自己的属性和方法,所以它是不需要依赖其他对象就可以完成自己的操作。

   使用封装有三大好处:

         1、良好的封装能够减少耦合。

         2、类内部的结构可以自由修改。

         3、可以对成员进行更精确的控制。

         4、隐藏信息,实现细节。

   public class User  {    
        /** The id. */
        private String id;
        /** The name. */
        private String name;
        /** 部门Id */
        private Long deptId;
        /** The password. */
        private String password;
        public String getId() {
        return id;
        }
        public void setId(String id) {
        this.id = id;
        }
        public String getName() {
        return name;
        }
        public void setName(String name) {
        this.name = name;
        }
        public Long getDeptId() {
        return deptId;
        }
        public void setDeptId(Long deptId) {
        this.deptId = deptId;
        }
        public String getPassword() {
        return password;
        }
        public void setPassword(String password) {
        this.password = password;
        }
    }

如上:就是提供get set方法,将属性私有化,同时提供一些可以被外界访问的属性的方法,如果不想被外界方法,我们大可不必提供方法给外界访问。但是如果一个类没有提供给外界访问的方法,那么这个类也没有什么意义了,

好比卫生间,里面的马桶,用具都是卫生间的私有属性,如果没那些墙遮挡,是不是别人就会一览无余呢?没有一点儿隐私!就是存在那个遮挡的墙,我们既能够有自己的隐私而且我们可以随意的更改里面的摆设而不会影响到其他的。

发表评论