国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

Android項目中實體類entity的作用詳解

瀏覽:177日期:2022-09-24 15:16:16

估計很多入門安卓的朋友對entity很困惑,為什么要寫實體類?有什么用?寫來干什么?

對于實體類的理解我入門的時候也是困惑了好久,后面用多了才慢慢理解,這篇博客就當復習和筆記。

Java中entity(實體類)的寫法規(guī)范

在日常的Java項目開發(fā)中,entity(實體類)是必不可少的,它們一般都有很多的屬性,并有相應(yīng)的setter和getter方法。entity(實體類)的作用一般是和數(shù)據(jù)表做映射。所以快速寫出規(guī)范的entity(實體類)是java開發(fā)中一項必不可少的技能。

在項目中寫實體類一般遵循下面的規(guī)范:

1、根據(jù)你的設(shè)計,定義一組你需要的私有屬性。

2、根據(jù)這些屬性,創(chuàng)建它們的setter和getter方法。(eclipse等IDE可以自動生成。具體怎么生成?請自行百度。)

3、提供帶參數(shù)的構(gòu)造器和無參數(shù)的構(gòu)造器。

4、重寫父類中的eauals()方法和hashcode()方法。(如果需要涉及到兩個對象之間的比較,這兩個功能很重要。)

對Java實體類的眾多理解:

A .就是屬性類,通常定義在model層里面

B. 一般的實體類對應(yīng)一個數(shù)據(jù)表,其中的屬性對應(yīng)數(shù)據(jù)表中的字段。

好處:

1.對對象實體的封裝,體現(xiàn)OO思想。

2.屬性可以對字段定義和狀態(tài)進行判斷和過濾

3.把相關(guān)信息用一個實體類封裝后,我們在程序中可以把實體類作為參數(shù)傳遞,更加方便。

C. 說白了就是為了讓程序員在對數(shù)據(jù)庫操作的時候不用寫SQL語句

D. 就是一個數(shù)據(jù)庫表生成一個類

這樣做對數(shù)據(jù)庫操作起來方便

編寫代碼較少 提高效率 可以使程序員專注邏輯關(guān)系

E. 實體類就是把對某一個表的操作全寫在一個類中.

F. 在Java開發(fā)中經(jīng)常要定義一些實體類,這些類的定義的好壞會直接影響,編寫代碼的質(zhì)量和難易程度,

以下是別人總結(jié)的一些經(jīng)驗。

一、實體類的名字盡量和數(shù)據(jù)庫的表的名字對應(yīng)相同。

二、實體類應(yīng)該實現(xiàn)java.io.Serializable接口。

三、實體類應(yīng)該有個無參的構(gòu)造方法。

四、實體類應(yīng)該有個有參(所有的參數(shù))的構(gòu)造方法。

五、實體類有屬性和方法,屬性對應(yīng)數(shù)據(jù)庫中表的字段,主要有g(shù)etter和setter方法。

六、實體類還應(yīng)該有個屬性serialVersionUID。例如:private static final long serialVersionUID = -6125297654796395674L;

七、屬性一般是private類型,方法位public類型,對于數(shù)據(jù)庫自動生成的ID字段對應(yīng)的屬性的set方法應(yīng)為private。

G. 實體類中都是實例對象,實例對象在jvm的堆區(qū)中開辟了一個該對象引用空間,并且讓該引用指向某個實例,類聲明只是在jvm的棧去中開辟了一個該對象引用,沒有讓該引用做任何指向.

例如 :

1.String str;

2.String str = new String (“dgfgg”);

1中的只是一個引用,說明str應(yīng)該指向一個String 類型的實例,但還沒對str和堆區(qū)的實例做具體的指向.也就是說它還沒有指向某個實例.

而2中的即定義了一個引用(str)又對str做了具體的指向,它指向的內(nèi)容就是后面new出來的String 實例.

實體類中的構(gòu)造方法+set方法+get方法:

構(gòu)造函數(shù):初始化成員變量

get,set方法,獲取和改變成員變量的值,JavaBean規(guī)范規(guī)定只使用get/set訪問成員變量

構(gòu)造函數(shù):你每次寫一個Java文件,實際上都寫了一個類(創(chuàng)建一個類,jvm就會自動為這個類開辟一塊內(nèi)存空間)。有了類就需要有類對象,要產(chǎn)生類對象就需要構(gòu)造函數(shù)對這個剛剛申請的內(nèi)存空間做一點事,賦屬性值之類的工作。當然,如果你不寫,它就默認有一個Class(){}的構(gòu)造方法出現(xiàn),當然它什么活也不干。

你的屬性是什么樣的?public?private?默認?還是protected?這四種你找教材務(wù)必弄懂分清,很有用。如果是private,這種屬性不許別的對象改和讀,但有時候需要改/讀,怎么辦?寫一個public void setAbc(xxx){}和一個public xxx getAbc(){}就實現(xiàn)外部讀寫屬性的功能了。

set ,get完全是自我規(guī)定的,就是設(shè)置初值和獲得值的意思.你也可以修改成其他字符.但是用set ,get還是要好些,因為你能通過單詞理解你寫的代碼的意思,方便閱讀而已。

總結(jié):實體是就是Java中的O/R Mapping映射,即數(shù)據(jù)庫中的一個表映射成對應(yīng)的一個Java類,其中還有一個映射文件。給定一個較復雜的實體關(guān)系(如一對一,一對多,多對多),應(yīng)該熟練地寫出實體類!!

以上這篇Android項目中實體類entity的作用詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標簽: Android
相關(guān)文章:
主站蜘蛛池模板: 罗江县| 县级市| 土默特左旗| 汤原县| 汉川市| 廊坊市| 南昌市| 洞头县| 遵义县| 花莲市| 义乌市| 石城县| 福贡县| 乐安县| 融水| 邯郸县| 鸡泽县| 襄垣县| 囊谦县| 甘谷县| 马公市| 通海县| 宁陵县| 延庆县| 沙坪坝区| 榆中县| 大渡口区| 隆子县| 神木县| 清徐县| 崇礼县| 金门县| 莱西市| 视频| 富裕县| 阳原县| 安乡县| 全南县| 喜德县| 淅川县| 梨树县|