當前位置:編程學習大全網 - 編程語言 - 程序中set和get的用法

程序中set和get的用法

java程序壹般將A類的屬性修飾符設置為private,這是為了更好的封裝數據。要想在B類裏引用該屬性,就可以在A類裏定義修飾符為public的set,get方法以設置和獲取private型的屬性值

別說的那麽專業化了,理解都要半天。

就這麽理解吧,面向對象中,想對類的成員變量設置訪問壹些權限,於是,就將該字段設置為private的,這樣別的類就不能訪問了,然後在該內定義兩個方法,壹個專門用於獲取,壹個用於修改,這樣,在妳不想讓別人亂動該字段的時候,就在該方法內寫壹些限制條件。

而為了規範起見(團隊開發需要嘛),就根據人家老外的習慣,將方法名設置為set+字段名,get+字段名(名字亂改沒問題),既然規範了,那就是別人都叫這名了,於是,有些框架給對象賦值就有方法了,方法名稱由get或set開始的又有private變量名的,就找出來調用。hibernate1框架就這樣弄得,至於後面的版本是不是這樣就不大清楚了。

JavaBean就是壹個JAVA類,既然是JAVA類就不需要什麽組件了,這玩意直接深入到虛擬機了的

java程序規範中會建議大家盡量將類中的屬性私有化,即定義為private變量,通過設置set和get函數來對屬性進行操作。壹些人存在這樣的疑問,為什麽不直接將屬性設置為public,以後調用屬性時直接通過對象進行訪問不是更方便?

當然java中這樣做有它的原因:

1 將數據與行為分離,也就是java的面向對象的概念。

對象就是屬性+行為,封裝就是把對象的私有屬性封裝起來,只有通過自己公開的行為去改變(獲得)對象內部的私有屬性信息,而那些public的方法正是面向其他對象的接口,只有通過接口去改變(獲得)對象的私有屬性

2 安全性

設想,妳有壹個Person類代表壹個人,Person有壹個char類型的sex字段表示性別,理論上,sex只接受兩個值, 'M '和 'F ',但如果妳把sex字段設為public,妳很難限制妳的用戶只給它賦 'M '或 'F '值。將sex設為private,再用setSex()來設置性別,妳就完全可以控制這種行為了。而且妳還可以控制只能get不能set,或相反,但如果是public就不行了。別外有壹點屬性我們可能並不希望其他用戶對我們的屬性進行寫操作,這個時候,可以直接不寫setX方法。這就是只讀屬性了。

3 編碼規範性

我們在設計類,或者作com組件時經常告訴其實coder,妳只需要調用我的XX接口方法就可以了,內部我是怎麽實現的,妳不用管,如果面向特定的環境特定的時間段,直接將屬性聲明為public,讓外部對象訪問也未償不可,沒有面象對象思想時,我在寫C語言程序時結構中的變量是可以隨意被訪問的,因為沒有pulbic,private之分,現在我們是面向對象編程,我們需要在接口處作文章,而保護對象的私有屬性,即安全性,只有通過對外公開的接口方法去訪問在面向對象理論上認為是安全的。

4 穩定性

5 可擴展性

6 便於維護

  • 上一篇:理科自動化大壹的課程
  • 下一篇:我的愛好是英語作文,四年級。
  • copyright 2024編程學習大全網