<label id="2a06w"><tt id="2a06w"></tt></label><label id="2a06w"><tt id="2a06w"><em id="2a06w"></em></tt></label><menu id="2a06w"></menu>
  • <dfn id="2a06w"><var id="2a06w"><label id="2a06w"></label></var></dfn>
    <sup id="2a06w"><button id="2a06w"><em id="2a06w"></em></button></sup>
    <dfn id="2a06w"><var id="2a06w"></var></dfn>
    <dfn id="2a06w"></dfn>
  • <dfn id="2a06w"><code id="2a06w"><ins id="2a06w"></ins></code></dfn>
  • <small id="2a06w"><samp id="2a06w"></samp></small>
  • <dfn id="2a06w"><table id="2a06w"><center id="2a06w"></center></table></dfn>
    <label id="2a06w"><tt id="2a06w"><em id="2a06w"></em></tt></label>
    <strike id="2a06w"><form id="2a06w"></form></strike>
    <menu id="2a06w"><tt id="2a06w"></tt></menu>

    將想法與焦點(diǎn)和您一起共享

    Java與模式 不變模式 Immutable pattern發(fā)布者:本站     時間:2020-05-06 15:05:22

    不變模式可增強(qiáng)對象的強(qiáng)壯性(robustness)。不變模式允許多個對象共享某一對象,降低對該對象進(jìn)行并發(fā)訪問的同步化開銷。如果需要修改一個不變對象的狀態(tài),就需要建立一個新的同類型對象,并在創(chuàng)建時將這個新的狀態(tài)存儲在新對象里。

    不變模式之設(shè)計(jì)一個類。一個類的內(nèi)部狀態(tài)創(chuàng)建后,在整個生命期內(nèi)都不會發(fā)生變化時,這個類被稱為不變類。這種使用不變類的做法叫作不便模式。

    弱不變模式:一個類的實(shí)例狀態(tài)不可改變,但是子類的實(shí)例具有可能會變化的狀態(tài)。

    對象沒有任何方法可以修改對象的狀態(tài)
    所有的屬性都應(yīng)該是私有的
    對象所引用的其他對象如果是可變對象的話,必須設(shè)法限制外界對這些對象的訪問,以防止外界修改這些對象。如果可能,應(yīng)該盡量在不變對象內(nèi)部初始化這些被引用到的對象,而不要在客戶端初始化。如果必須在 客戶端初始化,就應(yīng)該考慮在不變對象初始化的時候,適用這個可變對象的復(fù)制。
    強(qiáng)不變模式:一個類的實(shí)例不可改變,子類的實(shí)例也不可改變

    所有的弱不變模式的條件(必選)
    類所有的方法都應(yīng)當(dāng)是final,這樣這個類的子類不能夠換掉此類的方法(2,3選項(xiàng)必選一個)
    這個類本身就是final的,不存在子類(2,3選項(xiàng)必選一個)
    優(yōu)點(diǎn):

    易維護(hù),避免程序錯誤
    線程安全
    缺點(diǎn):

    如果需要修改狀態(tài),必須修建對象,可能造成資源浪費(fèi)。



    選擇我們,優(yōu)質(zhì)服務(wù),不容錯過
    1. 優(yōu)秀的網(wǎng)絡(luò)資源,強(qiáng)大的網(wǎng)站優(yōu)化技術(shù),穩(wěn)定的網(wǎng)站和速度保證
    2. 15年上海網(wǎng)站建設(shè)經(jīng)驗(yàn),優(yōu)秀的技術(shù)和設(shè)計(jì)水平,更放心
    3. 全程省心服務(wù),不必?fù)?dān)心自己不懂網(wǎng)絡(luò),更省心。
    ------------------------------------------------------------
    24小時聯(lián)系電話:021-58370032
    99人妻中文字幕视频在,亚洲无码视频在线免费看,久久国产乱子伦免费精品,日本中文字幕色视频网站
    <label id="2a06w"><tt id="2a06w"></tt></label><label id="2a06w"><tt id="2a06w"><em id="2a06w"></em></tt></label><menu id="2a06w"></menu>
  • <dfn id="2a06w"><var id="2a06w"><label id="2a06w"></label></var></dfn>
    <sup id="2a06w"><button id="2a06w"><em id="2a06w"></em></button></sup>
    <dfn id="2a06w"><var id="2a06w"></var></dfn>
    <dfn id="2a06w"></dfn>
  • <dfn id="2a06w"><code id="2a06w"><ins id="2a06w"></ins></code></dfn>
  • <small id="2a06w"><samp id="2a06w"></samp></small>
  • <dfn id="2a06w"><table id="2a06w"><center id="2a06w"></center></table></dfn>
    <label id="2a06w"><tt id="2a06w"><em id="2a06w"></em></tt></label>
    <strike id="2a06w"><form id="2a06w"></form></strike>
    <menu id="2a06w"><tt id="2a06w"></tt></menu>