當前位置:
首頁 > 知識 > JAVA 封裝

JAVA 封裝

JAVA封裝

封裝是一種可以使類中的欄位私有並能通過公有方法來訪問私有欄位的技術。如果一個欄位被聲明為私有,它就不能在類的外部被訪問,從而隱藏了類內部的欄位。基於這個原因,封裝有時也被稱為數據隱藏。

封裝可以被認為是一種能夠保護代碼和數據被定義在類外的其它代碼任意訪問的屏障。訪問數據和代碼由一個介面嚴格控制。

封裝的主要好處是修改我們實現的代碼而又不會破壞其他人使用我們的代碼。封裝的這個特性使我們的代碼具有可維護性、靈活性以及擴展性。

示例

如下是一個使用了封裝的例子:

/* File name : EncapTest.java */

public class EncapTest{

private String name;

private String idNum;

private int age;

public int getAge(){

return age;

}

public String getName(){

return name;

}

public String getIdNum(){

return idNum;

}

public void setAge( int newAge){

age = newAge;

}

public void setName(String newName){

name = newName;

}

public void setIdNum( String newId){

idNum = newId;

}

}

公有方法是從類外訪問到類內欄位的入口。通常情況下,這些方法被定義為 getters 和 setters 。因此想要訪問類內變數的任何其他類要使用 getters 和 setters 方法。

EncapTest 類的變數可以像如下的方式訪問:

/* File name : RunEncap.java */

public class RunEncap{

public static void main(String args[]){

EncapTest encap = new EncapTest();

encap.setName("James");

encap.setAge(20);

encap.setIdNum("{}ms");

" Age : "+ encap.getAge());

}

}

這將產生下述結果:

Name : James Age : 20

封裝的優點

類中的欄位可以被設置為只讀或只寫。

類可以完全控制它欄位裡面所存儲的東西。

類的使用者不用知道類是如何存儲數據的。類可以改變欄位的數據類型而類的使用者不需要改變任何之前的代碼。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 java吧 的精彩文章:

Java 新手問題匯總 一1
Java 繼承
11本Java程序員必讀的書
給JAVA,說句公道話
全面解析Java註解

TAG:java吧 |