您好,登錄后才能下訂單哦!
小編給大家分享一下java字段指的是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
Java中的屬性和字段有什么區別?
Java中的屬性(property),通常可以理解為get和set方法。
而字段(field),通常叫做“類成員”,或 "類成員變量”,有時也叫“域”,理解為“數據成員”,用來承載數據的。
字段(field)
類成員(字段),通常是在類中定義的類成員變量,
例如:
public class A{ private String s = "123"; }
我們可以說A類中有一個成員變量叫做s,A類有一個字段s 。
字段一般用來承載數據,所以為了安全性,一般定義為私有的。
字段和常量描述了類的數據(域),當這些數據的某些部分不允許外界訪問時,
根據 “對象封裝” 的原則,應盡量避免將一個類型的字段以公有方式提供給外部。除了final修飾的常量。
一般將其設置為private類型。既然是私有,那外界怎么訪問呢? 當然是通過Java的屬性方法!
屬性(property)
屬性只局限于類中方法的聲明,并不與類中其他成員相關,屬于JavaBean的范疇。
例如:
void setA(String s){} String getA(){}
當一個類中擁有這樣一對方法時,我們可以說,這個類中擁有一個可讀寫的a屬性(注意是小寫a)。如果去掉了set的方法,則是可讀屬性,反之亦然。
其規則是:去掉get或set后其剩余的字符串
總結:
區別開屬性與字段是為了更好的實現數據安全,比如當我們想給一個類的屬性賦值或者其他類用到了,就需要將這個字段設置為public,然而這樣可以對字段進行任意的讀寫操作,非常不利于數據安全。于是就加上了屬性,簡單說屬性實現了字段的封裝,屬性有get、set 方法來控制字段,該字段的屬性只有set方法沒有get方法,就只可以對該方法進行賦值操作,沒有讀操作,反之亦然。就是對對字段的操作通過屬性來控制。
可以創建屬性,將字段和屬性封裝在一起。通過屬性可以像訪問字段一樣訪問數據成員,實現數據的封裝,避免使用非法數據賦值,保證數據完整性,同時類內部發生修改時,避免整個程序的修改。
基于get,set方法的反射不會破壞對象數據,IDE可以通過約定做些智能提示。如果你自己用反射,你想做些通用處理,去遍歷每個字段,沒人跟你說哪個字段能寫,那個能讀,你沒法處理嘛。
看完了這篇文章,相信你對java字段指的是什么有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。