From ddd10c1aa8da15dc93ac810125ac52c551f370aa Mon Sep 17 00:00:00 2001 From: CyC2018 <1029579233@qq.com> Date: Mon, 4 Jun 2018 14:53:39 +0800 Subject: [PATCH] auto commit --- notes/设计模式.md | 75 +++++++++++++++++- pics/b0f61ac2-a4b6-4042-9cf0-ccf4238c1ff7.png | Bin 0 -> 18432 bytes 2 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 pics/b0f61ac2-a4b6-4042-9cf0-ccf4238c1ff7.png diff --git a/notes/设计模式.md b/notes/设计模式.md index cee12101..1783c170 100644 --- a/notes/设计模式.md +++ b/notes/设计模式.md @@ -496,7 +496,80 @@ public class Client { ### 意图 -提供一种一致的访问聚合对象元素的方法,并且不暴露聚合对象的内部表示。 +提供一种顺序访问聚合对象元素的方法,并且不暴露聚合对象的内部表示。 + +### 类图 + +
Px?B+uE1akhH?-cFKX5Zjc< z-gc-nW-%{s gt^ft`n>SE2Y}c*DHwST|0^$O#X6I$r}^*YV4G#nJXCl)<3f$`urM>tNK&)IbJF z_)9SO`DxR9XM&}~5pKD_Y)TG8tna~3n-2V!ijuhu xZ130nMMMuRPnRUTUw8J1@pubM9cIIpwcEpSDDtNbJx&aMN|mZgJ7@4~@I-YqbOV zG=*9hh6 vlSd{7JqE2iLPyYL{%e(hH i`FSkO@>B^VJ%Y=^mX&%cqiGeeof`O6xxlXj^K?1aXsN z#>+(lf4ZvhLYPonoG)~NE(`YPT*tgBRP64gs`vA@sn1<{6CBv%O$eiQy>EM4JPs|y zwLiJcSN~cdo0m)Br1j~7Tq}8(lXS~YMBs2gm*yiUs3RncVo#a58tUM3vi#UuL 1Fb-KjgESeRoaNpgE26`wZlY*+XD@}EuP z$m04RwZJ5e)%0f$SsDIJNBE;TEv5QCZ%<dSR$M{-|%dS^V@r~4AWF+EHA3=d{vc}KB#G;s4TJfO<^uEThaCy%+gH1UXfZA zX1J(}pYIJ>+G`hVpMlE5$PXsJqX8c0g6*H22z*5BGFLEj>wd)OSSu0x!)es{6spa( z6m`@g+g^m+UiAkivt*+Qoux~*!Pl*asS167_DIW`Nc#M!YB&F>{;wh?|Fdmz2c9ys zU_&-VmaQ|_?EDAd7@P2U+?#g|D3K+lAJq4xtm%qI>C)3uK+)AIHap#H@b?jFjmvOS z0YPO<$P&jz5Bk?pi!jFKit#7(vUk~+rCG1NQI5f p4#hHH OVGlU$2yEA`;Mjvb43Yrr&~Jl#delU;Pi#K&Q6G{1WPaV zRJ#(H5R9~bc8)RO9qIY(N>W8LL9sz}82+riZjMQ>ou=WaZOajL;3$K-t^|gmyE gZ i`sb16`*!cB7PI{?js}d=@N4n^6J-&gksXy0 zrC%M1R%i``d~$vM=|6(19JE^FVNlZqVM`!1gZ+wLOFO08e^B#UEANohNFy-&wsS*f z= h1w>&4ew{jM 0`R1A7e{sBx0#3~gj3y%_{quGr)>@DK z?kW1lb6{s|eK~D_Iz76c@k6Hwm;V+e`m;&zr5`NjW`4&DM?cPVcu$fHP3edw=3fBh z3Dzn-b04?tR;t+2&JC795-{Q%p?V%xjliM)_Rkuq^&8f`ehXInq-LdHNZzmR{9s%+ zQMg%*)CyfnWc ;j&; ^R^n z fdF?leV$C9yMcp@FRd@#(w+2vU)817&qBgA-TYr#T@m+0N?Z0idNP#j zi&0&8eP-zC=nC&%_dJweP!lN@bPE)eH(^#3s6U!LV)Z|o33E2SYE<#&gAl9w)!*h^ zzR!tnh6^1BMD`jl&^y*{<27N|b#Xg(OK=kKIlk58_5z)B`&pDgJ*`d9tkw;Khr#Sr zbluC VeiMQ(3h?+bb2LbQW?Uu%9;d!!ffOUHJ&{!nX zRxpO|+;H)=ZKx?DODzhW%RBW0=x&HZ#ZQi#kECgE$DQZe+gu`JxIw+{H6Oz{-b4ER z=+-$^Nw%m`J-_O}p?`|dv`{XOXH^O1)-PyvFCuwJ8GCatoHaK5oO7nGV(f8A6;tH; zt#!VoBtjTou%P_Qn+-Hd=mc#yvo8W=qU)n&VqBX^6HI=I $4L@jls^Ry@)q1d{pM-fW=Q|Xu;8y JRO?Kf0H7u2<+)hum$-A?X?lOut*2DYAtQIRm-l#LxDp(@L~MU zXQIS@vcK}?E7p?;&aCD63prh{mtK#I?imEa`%dN+BC=Nj6h*^Jrmz-_Z6UE*PKyZC zdV+p8kB#(MQcH!BbBBj5{0d5^%Nt}=%Pb4hStJD33>iEOZQgFG14z9k6O6;>Y1O^Z zr(D?|-p>E>2^ri6yF2Z%hr#`%Vhu)a$ZuCJ!U^qS=tMXcqljFoz`Xe;zyYc?bdOQ+ zC#O;CY%<7CbDcHnr`=o9R^}$7fF3|h9W16hwtIL3aNqe0;+gg=>eb2> yJV%@Oeu~Gv~=N79t5n@fn_n ECE}%7k1|r{^&)>lq1*r^PZ~!FA@H})Q}RO9Qh%T7C=mQzQms*KCo4fu4nMpf4BjF@2-BSkJ z_t5!BJ(;o1&Df=BB7wk37pow-oba^#E>=XAr9y=%QvUiqrpXuE+U(|{E!*K^er^8& zdeSb=hCIK8X=aEEoeUhTs!o>vvG672WO@1xn#yMX)4KncE(00>{%%bS>j?Lc-_L3I zbQuEx0r4=1<%&`e9gl*$HkXQcs?m4%OarJ1CRYC^)Re|yjz?6Dx;XWpRe1M`c`X$g zx~f>! W# Sb|w+Q|KB}j|nUcGvpGaM>4F#G@YJ=%ft>vv5}WAv#7qZh^A{k z0EJPUenE{hlkz>QmR4UKm}(tnE9!=+-Y2Yhsl+nS6==R9k9)Pj?N?(W(ky+9|M3YZ zjWPOFg|6ccmA__hEz(}jSvy}@=PK|3vN0;BmI;luf1HX& |Us(uqyolB2b)Uq~ z-mFtSrNI(JkOxNGpb9kQJB4ap&@Si#*J_>sOg+2mPHEGM>FuY$io~Df^cRSTGHbOqhVnY-&_E9s77wY^_ zg0e-;}hu!@j;p~nJ z_fa_R9i%z`70j%#>2sbvLC_^nu*!Q6&VrSfbIwCxPu41uJOWiI`_Dh_Iae`8F6prE zydL*XRy(D6mjO427|Z3Gfk~f_$nO8dF#i1H8YmT@dr``s1l-uI#VD4l-(&yv$ 4(lh{lAjQi7pKH;RDpYRo zV@?(sF4x#k(exC!L)+ZUZX^LZ2I1=U`cH5^GS4*?QH+YYw6N7HQT+lz5=K!Zpm!Jl zZbrGak|FND1KezrSq2$C2(c8FEYT4L-J6ZxoAsv~&ajO+z^Y!AO`J0=aMf@0i~ipd z#AT-Sg&@(edy1TmHIYd9ymw#=+jAul5bVd;f8suD#5n z4Hr`P|f6D^Ny z#^((NJ)?N!T^Vb6!UjMwI!hh21xfjx9dU^sf}INj)|u;WNiONMiqsojToB<=w0LOF zJt}u?Z^cuK%T92Twyk75eaAbg&{skm63{Sj6npegDwm}6^YDFVSyS4tg~F6b*qZ>V z6^NC%9Oew`KJ6dF?l6q{-M-A{|8&K{;U$>HqK?h%ZyX3X`L|Cv_+6MiTmLK`EbBbm zx@@MtTvh=l7EB(l8R;WC;oh~@j}RidBF2X*E3jr;HLP=r^9{5E;7RoBAP)`ESdJkl zJ%cMRUW#THdobr0PmPP(=^NCktA&PPQ~6 z*DK9ZUHc?>S1HxNE)8T&jVS_OX^YPUJAv+kMBL5hs>$D9@`>aZS-9)5B)G3#bG(@T zkM9hD;gCrok`#VyhT1pdt^CKM^aKnJYt07zFP8k #hkLz_ej-4>!I;TQI0MLQlJ4u3CJPk~THuKoXZ~QSue$T( zDIitrAhE-pJ3zmqeE}g{olm>?s^?$MfM8pl&&$?nJP?AgAt>=lRj*V7*1q|$0d@Yz zH!8rW?*tfecNdszJDpANdgWAoLV}+>`Z!4bUECIX%LADvp7m!70%73o3KA%QswfIn zBmtjAk?fWE0-I}=vGWla71~Bnzd%?UC=TQUb899*MkKLQVs_3GO(#;2ke&q*lYNTZ z=OGvsBy?g=OyGduma3kt1tN (F~B?iB7eK*8%Ga zskW mFbTF@K=o`SZ?pgTh`+nbAPI<+Xn>k=LWoG_#I)QViyzQJxlD)9 znBqcm7EUq2RvAw0nmru+QJLogLdPtw$`Z5Ttj&No8tse-4;Q7ExxJ_`-?WpEea3bM z4q#)R%@aJob)_(y$pc`2cb>E#0ivB@G3(g|^bUDHdw^JF26PYW^Vsci$)^NZ_OPau zRGVyHk5oYm`6@sd&51tsob ;7bIVTL^^{xZvFRcltw>x5|dqdh` zP gY2^KVxThdjIIRVZ&8wpkhHbVh|{zu5sK3 zsxn*QJy%*gYf2U}()imuD(K@Z^@nwvAz+FxzjThcFqoe>L{b4gk%A^1(V`A!A7D{7 z`b$@9M8^q+U{Y1vDc?iJokNyEhD*`eOQPT?6GQ}i4M(%Q-*LBDnTg7MpY665FyoAH zYq=<03fFv}&wLmQ#Hdi(lB3bZ1B$g1DlB^`oyLlAt7IdN382Qx%z*T4SzPAEm^q)q zaUiwZOOb!6+4hJ|8Y`|`3fuOG@JBrWgiodkJ3X3<^K=2feGalGBlvpjNd3WQLEFJR z=)^!|Q6jI;0(X9#3Mg*K^;lkV{*TM<_K0YEt>mXbF&%#aaxO8nirK}2Su>!y1|jDO zhhj&`XFJM_5R~cr|EDWwANSZa1G;epT4N8?gv)LG9p&J8Wbx9vz%C$r-SPow_uqE; zht6+MZ21cGN? `G+zF5ir VomgRpHjtlvrc!|-PR zk|eIs?*%>pE6b9w>!wqmN(es*qn a(xB_EG}pd zy#6qwjDt8Sw6qk?}z8w}YbRAEv;g;0R8-cfSbof3i-Re~Bhf zuzexRLh{QK>_0aRv_$+qsMD# 1YhZbs3}{AjqM|p3nvNc-HS`K8g_i%(?z$vmR(BkK~uQ zmjRj!w&aTqbXBbDv;F=TuBm`El&Zc^h5~-j20SX_(s&<~E?bsCPe}MR6L5ui8G33q z@I(r%(mh6?4(e}~!(sdm&Pr7lfD|A)SET$-hO$EyNN#-sCll`n7)sFe(8;micxCO; zjJVG7lJ}FP0u>UH4>nU7nvmUl;Qm7p7%Bv)#CXrP!ej|aWRA>jqI@o^5fCPlL3+w9 zz*)H^ACTa}{oXf#x|p=G>5qD5(|rcyqIz;Mt~SN2?>-Hx&n(HJyqDA{K)KApA3dD% zmt_DzuWl7I3eG@^KM@K3FKZtxsuz+8;-q&}ZMqk?z7>BsL*90m#@)_FvotqjWz# zxxPQ}qXXj?;S!O49u3Hy4Zt8Dtlpl_UHUkvyGVe2hXHT>@=;WArsiPGPNmy^$ZI+f zr+K8|VxJlBpQ~`0=ko)bzZ6kehY3_o2R-tw14y`(MzJ>#p5=a3;)_4ZwtAt+GG&_K zF=lH4m;u75>lN@+ac6`H3Bd3bM_szFw}g|i&Yl3_rerOsRl0Xs_{q9817jCbc1(d* z?uc1<+(o*KC@@BF-bY_@4cXGH0`sMWfO=bg(y5Ds$`(e?39>k2N~FF1Bn?mn)IaiF zoDknEd0#J?{BwPx>u~mk0&&EMp8J!9ooc4CsMY76`rrHQmk2)o{?_)CkQ!LypZg%w z#C>Z@-2w?TOB*gubiXpUZvYQR0(hXqs#Jr;c|eJVh%?houL{s U5BT{lhyc=6r8}H()jk@^zMzD<2q(}~s`&pB z=@Vzo+THX!{8Hurfra(887Nj 73>ZFI=zoG`skV>!xh)$C1J6Klt_k> zT1QDS#T(av+&p}>*i{2!Kei=@syVuCe^fhX>&g5|hm^7S_me-K&xFC4MtZpbsjJhd z4k%J3Hk;5fS(cqhjIziNT+cs6H>j~uhcz6_;x!bXQ>d}ATqU!7(Pf#9P|tmDVoE-< z5RA*H+F0Ntu@24*z1&1bOy+4zbF{(dDqk^l<64pkw|aYpS^ooi{QvC{9;e|^7H7R; zQ_{rg5PdroQTot`@4k6L`14#R`e>{QF7gBeS1`;DoChqhVX|X<;3Jnv38B8vbuv-l zpoUu&h-oib3DBc6069O|0 uTKBVj&UavAI&?E?)O ziK8(NP|wW>6)29Tx2Cr^+;SXRcK^Y zhBP3wN@%=xNmcDy=$=@jtw6vr=iLX$(d~&UnuVPN5_=xmW7J07;pD(Cd2}hS`vT@g z($bm)0<})jz8x)qT$F0-(#R4kE@+Y{=n{i_mCUETg)7PCGUN>IqN5S%{&~tnvOtI& zHUowUUpR;%%Z9*fJlYR+E_RsE4=z<1SMcDFUX{0@^*wonPOSWG+059EYDlu49CFm| z`3a2JGE6N*BL>vS1>YQ6b~J~8AC%5U?oS?J9?WHg!y8qMAgKuDXFk|lpE6D*b2O~A zY1_{MT8{40kEGY|m{fhN-d-a#6pav_5M;%;x!ywaT7|(`kzw*S<|00#c9e7&D!ne& z)-gKjrU1CKsG>@QrHK_?2c!SkxHc8;SZ=~i|4z l7K18mm-cO@ zH)iI_WZ$TNru%S&pL{KQLFGF{Pvy?IWu!&Q 4g_PJEki6fQSpxa|uvkDEz{?2SJ_MMCts6tL9Rv*H# zXlJhyLy-*fJS637cH({H&6PtRZV)<&XCm$X`@2(*P)DnDH+oYjmtrk5f-YCZggrj| zt2~^HWCJL`qcM0R`q?fbg{ErSkSz_^{tto~TO@GxTb(P9yl~|j8^U)N;O}d9)ETIG zYRGgr7C8O$rp^|{bO|}+B9@h^TqZMQx7VvCKLjxL+;A!ljO}pWd3oDJx-1@25J)if z?Szj3xi|0P(6OM~bE{WJKAqW*-d@H!=)xcz|D${(;#He`)Uv`E`tYrcTD%guwMsT~ zyhXyJgKJ25)`9l+?=H4&!|3DC(Koflv>wtKxOHxQoi+C<^BBY!1*+AMMB^@mu}M2G z>TB3yVLJQ^oN}GVNWbP_JZE3>Ccx^B+R-k11$@4N_wCcI4)ijCI<&mgbc}~r1PE86 z`f_pusNyp&+W}B2D}z|JNS`Wg>lg6RMs>fO=E3JtMZ_!^oYJVxzF$W6`tk8{p1E`{ z Kd79%hSqVP1eRB6Aybbl7eX?8AewZ8W?Nn7QwY)3?y6UTu)S*XERNx zLxUiff|`kC3MwR>-~|5IIxBx^IHATS(0Dk9f3XkLy4RnJRgoURSPGKR1=7?b$|42R zm^^O9q^7N-#TQNJ5L}87CSFgV{a_Q$)S$m1_mf4vRH|S=Bj^M8HubV8M#abtLO1D+ zTT7Zp @Yu IdrxZU@iHs~fTt1w+ERupQ5pXEw cQE zE}+h1{k|kNRWku~$Pgy`NWbuKIngPL^)tNDz_Of?ZPMCwhYF(!$GI3WVv<{XIuJ26 zTj5is#3vv0*!5kllM`_p7be_tTY>41z&lZiraZgxnRCFi7YsE?zBFp+ KTT&dsN$ z!Qm^0zbIFqV~vtR8`f(!v|w!e-AO8=aHwGMdhP}~7!&5B&n=|}LaqUUun0-$;w$q& zi)W#~hd%i=zL4E^a5gf(rLa% 4d$q`q_ mvoy&- zR(d3t60S;7?r#s~Jm~h-12+mJTk|6TTlrc5^pgadtw#aC&;m`}KlK&ohdO|Y=ubhI z5UAX>fd85arnrNfz^T2#M@DwMXZsX&1WXu`=`qF)v2&miCY}MeX?~Zk^#1#DmMYnw z9W6F5fJ)L-6HYon$1K_hPlc$bW=IIt2ZrP$6c`Rjf&MaE{NoHHuz_xYcxB>>fg`>` z^#6x2of~HKwhL28pMwY#+nu~B)!8YT`yoI%L_1# z5&%oPdI6P43p6b$|4Dm|kRhBP3Ccx@4~bJNnaU+?03?J27A5a0B3EaE2>8PnFmjW2 z N-qvv$o5P;1l_NVj(iLY806i6~KrF!q4M{U#<>)21@46~Vo>;Nn680Z^ zZ_WVFF>V9jCqU}y-trb0DB3(2HTZ{TL4~pg_2V~m5mRF5oxkD{K!ojw*!i-;VTw!` zf=vgw%E7Gn2H6zRo4&U41KiHChZE>8pm!@Yf=6Lg@ZF|RVjhb!#h~^KiV>R>=hu+l zYP_<|Dx~=Mc Z*I!F|cuXa15 z+fa+}a=gCm2;ZJt3ZQEkn?=hvn(c%u_?RAt^BO(azV!=;wp$?K(YP-Q1_Z}Ectbj! zE(zG8Yj{g!tjdaHCeiZHEfLUIqL0%8&$BVe_#%v31oe!n7|9lCk~{-Wa|;i^WsvRl z C;&8JtajOzw%R(Mq4J>*G(FYeFBfs@Wo(*zYXP6yyd#r}N WB&IDqW= ziPLv0HFc$_u*PpMB(^=!Z4~|<8=&x&oir_vZKJDiODR&m+{+Jl5VHOo3yW+v{G2LB zva%u{KZC^g JodQ0tS{%XbzAMCHYLdV=YmJZp)RHhzTA~S&7vrfd{|f2Vjo{pq5Wt>yHjNoDFNK zyI7+;0T6Yy((-M+`oy;E>X1-QRlOIn4y3RmF>D-mkICC{d>|cXx>WX8J9i=usic$| zA(fPyvsL^(t0rDOH-dl eZYhV^=<(xQ=K#iru=aR8S(*9Kz&-t#34-F3Q)ndI&ATa)MSh z&u^}u>By4u9*T)Xy>iZc9^&AF$8iF+z+uLTl@0Un&Git^U$Gb$;CpFTdVG-u&F zll){Vtu@a8q|_qdw;e^BP8>f{k^!<9Le**th<6L4E?Mo?xE|6BgCrs|-B>wA%(5t7 zXXoiRoU!^;0wg0iU5lnHOgR(b21?Ag1zCt~fCOnP#j>C(09d(ZGci3^R?tjr@A2Ks zf#LZItfX0UnB9DZmlWAXR&MIBW!?nWCCn7hAbnr}%x!LMvSdCZ0}6<_Ak|%Krk02+ z>GYQ%Q`25t_>T{8%b%cyxq8?p-V!C-j@FoKL?uc7vK(y= B?K zt9F5jrsZdmtcCN{i!R@<_7M$qI6sY7WTAdAc1&sd@ v2<4E?Xr*AI z>yF1=&dW9Xap6TzEI7zy|Dl<2S&)B}3?@-((#N>1kQSN3%Fwqby_p+>-wM}|uWC=O zh><@_f!sUMIIl`eVDLf-Jvvp<{9eekCJbx$T)EPHfh4pXyYLx$C)MWPGMVbhd{^El zhPChU4nW%x@K@U*!a!i}>{Z8A|LC+PB)0XxQN$>3s 8Y ze=H^E J`?s0WSoFDXHcf1;-7JSF%(yd4eRIS$HWyZtvnh; zlq*i;e~Ym1xB+5`I@@gQ_~G?CFo8pG?4vJYjv86i3-4rJjf)WExOctb%2FLbLOXn` z;=m! %*(+voT+acM?GG54wf&n7i5lG2$t>r HR?>kA2^TI8Cbr@z11gqr&b#McKwXjm_5OE^vG_ FfEdV=d55Ec0d+32BRFmpxgJRZ86tG=zS2mO^2)rz|j^!g~E z(18A+iAGYD(7ylw%@4xEeboQOSN_GRk#+t*`xj4G<&XUJ=g4EyMLqk$UyeajQ@W#A TCT||}|HuEIqPPDS;{SgEISPVs literal 0 HcmV?d00001