1. 程式人生 > >面向對象之封裝詳解

面向對象之封裝詳解

私有 orm mar padding 方便 aci pac one ava

Java面向對象的三大特征封裝,繼承,多態

封裝:

封裝的作用:為多態做準備的(繼承也是)。

封裝就是把同一類事物的共性(包括屬性和方法)歸到同一類中,方便使用。 (屬性能夠描述事物的特征,方法能夠描述事物的動作。)

1. 封裝的定義:


封裝:是將類的某些信息隱藏在類的內部,不允許外部程序直接訪問,而是通過該類提供的方法來實現對隱藏信息的操作和訪問。

也可以理解為:存在一個邊界,邊界之內的細節隱藏起來,只留下對外的借口(如:筆記本,手機,飲水機)

例如:筆記本如果不加塑料外殼能用不,能用,不過就是不安全,不好看罷了。而如果我們把它包裝一下,我們用的功能多了嗎?沒有,不過比不包裝不僅好看了,更重要的是安全了很多,也方便我們帶了。

封裝的好處:

只能通過規定方法訪問數據,安全、易用、簡單、易維護。

隱藏類的實現細節

方便加入控制語句

方便修改實現經過封裝的屬性,不能直接訪問,要通過公共屬性get/set方法訪問。


下面我們來看下這個例子:


 public class Husband {

     //對屬性的封裝一個人的姓名、性別、年齡、妻子都是這個人的私有屬性

    private String name;
    private String sex;
    private int age;
    private Wife wife;

     //set()、get()方法是該對象對外開發的接口

    public String getName() {  return name;  }
    public void setName(String name) {  this.name = name; }

    public String getSex() {  return sex; }
    public void setSex(String sex) { this.sex = sex; }

    public int getAge() { return age; }
    public void setAge(int age) { this.age = age; }

    public void setWife(Wife wife) { this.wife = wife; }

}



面向對象之封裝詳解