摘要:理性的說明下,隱藏數(shù)據(jù)既使用公有和私有這兩個存取修飾符,將實例變量標記為。本文已轉(zhuǎn)載個人技術(shù)公眾號歡迎留言討論與點贊上一篇推薦貓說關(guān)于方法及傳參的一些問題下一篇推薦
閱讀本文約“1.2分鐘”
“老王忘記把他的貓封裝起來,后來他的貓被壓平了......”
這是一個程序界的鬼故事,你忘記對你的數(shù)據(jù)進行封裝,那么有一天也會被人處理掉了。
創(chuàng)建Getter和Setter給所有的實例變量,并尋求某種方法強制其他程序都必須通過Setter來設(shè)定變量而不是直接的存取。
也就是封裝,其會對我們的實例變量加上絕對領(lǐng)域,因此沒有人能夠惡搞我們的變量。
且大部分的實例變量值都有一個適當?shù)姆秶?,比如身高就不能是負?shù),佛敲墻也不能3分鐘就做完。
強波其他程序一定要經(jīng)過Setter,如此Setter就能夠檢查參數(shù)并判斷是否可以執(zhí)行。setter可以退回不合理的值,或是拋出Exception、或者自己進行小數(shù)點的動作,重點是你可以在setter中執(zhí)行任何動作,但是如果直接暴露實體變量就沒有辦法了。
當然你會說大部分的setter其中也是沒有什么邏輯代碼的,其實與getter一樣,其好處是你事后可以改變想法卻不會需要改變其他部分的程序。
封裝的優(yōu)點就是能夠讓你三心二意卻又不會傷害別人,直接存儲變量的效率是比不上這個好處的。
理性的說明下,隱藏數(shù)據(jù)既使用公有和私有這兩個存取修飾符,將實例變量標記為private。將getter和setter標記為public。
當然獲取你某天有了足夠的java設(shè)計與編寫經(jīng)驗后,你會有新的做法,但是現(xiàn)在還是繼續(xù)使用這種維持安全的方式把。
本文已轉(zhuǎn)載個人技術(shù)公眾號:UncleCatMySelf
歡迎留言討論與點贊
上一篇推薦:【Java貓說】關(guān)于Java方法及傳參的一些問題
下一篇推薦:
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/71664.html
摘要:我可不可以忽略返回值并未要求一定要處理返回值。你可以調(diào)用返回非類型的方法而不必理會返回值,這代表你要的是方法的行為而不是返回值,你可以不指派返回值。 閱讀本文約1.2分鐘 1、如果想要傳入的參數(shù)是對象而不是primitive主數(shù)據(jù)類型會怎樣? 在Java中所傳遞的所有東西都是值,但此值是變量所攜帶的值。還有,引用對象的變量所攜帶的是遠程控制而不是對象本身,若你對方法傳入?yún)?shù),實際上傳...
摘要:所以,我實現(xiàn)了一個稱為的類來應(yīng)用反射?,F(xiàn)在流行的語言大都支持反射。這組內(nèi)省主要是針對類進行操作的,能夠獲取類的屬性信息??梢钥吹剑ㄟ^的內(nèi)省機制,解決了的最關(guān)鍵的問題。在封裝反射的時候,會充分考慮到各種情況。 BeanMap 學習具體的技術(shù)工具的好辦法就是些Demo、造輪子。所以,我實現(xiàn)了一個稱為BeanMap的類來應(yīng)用java反射API。 這個BeanMap的功能是將一個Bean包裝...
摘要:本文繼續(xù)講封裝。上一篇樂字節(jié)垃圾回收機制和語句這次講述繼承與權(quán)限修飾。通過繼承,子類自動擁有了基類的所有成員成員變量和成員方法。一覽無遺子承父業(yè)兒子自己使用家庭和睦占為已有。 本文繼續(xù)講Java封裝。上一篇:樂字節(jié)Java|GC垃圾回收機制、package和import語句 這次講述JavaBean、繼承與權(quán)限修飾。showImg(https://segmentfault.com/im...
摘要:沒有操作符重載。最終類型在所有情況下應(yīng)該是默認的,并用作為修飾符。這樣就會減少現(xiàn)在你會在和一些第三方的中見到的那些令人困惑的歷史遺留方法。在用過或是最新的之后你會覺得非常的繁瑣。這是最常見的關(guān)于的吐槽,但它這就是事實。 啊哈Reddit,沒了你我們還能在哪里從魚目混珠的網(wǎng)絡(luò)中提煉真正的精華?就在這雜亂無章的論壇中,的的確確存在著這樣一些精辟的討論。 比如有個叫Shambloroni的...
閱讀 1991·2021-10-25 09:48
閱讀 2842·2021-09-22 14:59
閱讀 1779·2019-08-29 16:52
閱讀 887·2019-08-29 16:07
閱讀 2328·2019-08-29 12:38
閱讀 1803·2019-08-26 13:23
閱讀 907·2019-08-26 11:49
閱讀 3303·2019-08-26 10:56