📄 6.mht
字号:
<H2>=E4=B8=89=E3=80=81 =E7=A8=8B=E5=BA=8F=E4=B8=BE=E4=BE=8B=EF=BC=9A=
</H2>
<P>=E8=AF=A5=E7=A8=8B=E5=BA=8F=E6=BC=94=E7=A4=BA=E4=BA=86=E6=8A=BD=E8=B1=A1=
=E5=B7=A5=E5=8E=82=E7=9A=84=E7=BB=93=E6=9E=84=EF=BC=8C=E6=9C=AC=E8=BA=AB=E4=
=B8=8D=E5=85=B7=E6=9C=89=E4=BB=BB=E4=BD=95=E5=AE=9E=E9=99=85=E4=BB=B7=E5=80=
=BC=E3=80=82</P>
<DIV=20
style=3D"BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; =
BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; BACKGROUND: =
#e6e6e6; PADDING-BOTTOM: 4px; BORDER-LEFT: windowtext 0.5pt solid; =
WIDTH: 98%; PADDING-TOP: 4px; BORDER-BOTTOM: windowtext 0.5pt solid">
<DIV><IMG =
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop><SPAN style=3D"COLOR: #008000">//</SPAN><SPAN=20
style=3D"COLOR: =
#008000"> Abstract Factory pattern -- Structural=
example </SPAN><SPAN=20
style=3D"COLOR: #008000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: #0000ff">using</SPAN><SPAN=20
style=3D"COLOR: #000000"> System;<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: #008000">//</SPAN><SPAN=20
style=3D"COLOR: #008000"> "AbstractFactory"</SPAN><SPAN=20
style=3D"COLOR: #008000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: #0000ff">abstract</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">class</SPAN><SPAN=20
style=3D"COLOR: #000000"> AbstractFactory<BR><IMG=20
id=3DCodehighlighter1_119_240_Open_Image=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_119_240_Open_Text.style.display=3D'none'; =
Codehighlighter1_119_240_Closed_Image.style.display=3D'inline'; =
Codehighlighter1_119_240_Closed_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockSta=
rt.gif"=20
align=3Dtop><IMG id=3DCodehighlighter1_119_240_Closed_Image =
style=3D"DISPLAY: none"=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_119_240_Closed_Text.style.display=3D'none'; =
Codehighlighter1_119_240_Open_Image.style.display=3D'inline'; =
Codehighlighter1_119_240_Open_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.=
gif"=20
align=3Dtop></SPAN><SPAN id=3DCodehighlighter1_119_240_Closed_Text=20
style=3D"BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; =
DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 =
1px solid; BACKGROUND-COLOR: #ffffff"><IMG=20
src=3D"http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN=20
id=3DCodehighlighter1_119_240_Open_Text><SPAN style=3D"COLOR: =
#000000">{<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN style=3D"COLOR: =
#008000">//</SPAN><SPAN=20
style=3D"COLOR: #008000"> Methods</SPAN><SPAN style=3D"COLOR: =
#008000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: =
#000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">abstract</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">public</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> AbstractProductA CreateProductA();<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN style=3D"COLOR: =
#0000ff">abstract</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">public</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> AbstractProductB CreateProductB();<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd=
.gif"=20
align=3Dtop>}</SPAN></SPAN><SPAN style=3D"COLOR: #000000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: #008000">//</SPAN><SPAN=20
style=3D"COLOR: #008000"> "ConcreteFactory1"</SPAN><SPAN=20
style=3D"COLOR: #008000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: #0000ff">class</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> ConcreteFactory1 : AbstractFactory<BR><IMG=20
id=3DCodehighlighter1_306_497_Open_Image=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_306_497_Open_Text.style.display=3D'none'; =
Codehighlighter1_306_497_Closed_Image.style.display=3D'inline'; =
Codehighlighter1_306_497_Closed_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockSta=
rt.gif"=20
align=3Dtop><IMG id=3DCodehighlighter1_306_497_Closed_Image =
style=3D"DISPLAY: none"=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_306_497_Closed_Text.style.display=3D'none'; =
Codehighlighter1_306_497_Open_Image.style.display=3D'inline'; =
Codehighlighter1_306_497_Open_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.=
gif"=20
align=3Dtop></SPAN><SPAN id=3DCodehighlighter1_306_497_Closed_Text=20
style=3D"BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; =
DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 =
1px solid; BACKGROUND-COLOR: #ffffff"><IMG=20
src=3D"http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN=20
id=3DCodehighlighter1_306_497_Open_Text><SPAN style=3D"COLOR: =
#000000">{<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN style=3D"COLOR: =
#008000">//</SPAN><SPAN=20
style=3D"COLOR: #008000"> Methods</SPAN><SPAN style=3D"COLOR: =
#008000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: =
#000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">override</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">public</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> AbstractProductA CreateProductA()<BR><IMG=20
id=3DCodehighlighter1_375_407_Open_Image=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_375_407_Open_Text.style.display=3D'none'; =
Codehighlighter1_375_407_Closed_Image.style.display=3D'inline'; =
Codehighlighter1_375_407_Closed_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlock=
Start.gif"=20
align=3Dtop><IMG id=3DCodehighlighter1_375_407_Closed_Image =
style=3D"DISPLAY: none"=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_375_407_Closed_Text.style.display=3D'none'; =
Codehighlighter1_375_407_Open_Image.style.display=3D'inline'; =
Codehighlighter1_375_407_Open_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlo=
ck.gif"=20
align=3Dtop> </SPAN><SPAN =
id=3DCodehighlighter1_375_407_Closed_Text=20
style=3D"BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; =
DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 =
1px solid; BACKGROUND-COLOR: #ffffff"><IMG=20
src=3D"http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN=20
id=3DCodehighlighter1_375_407_Open_Text><SPAN style=3D"COLOR: =
#000000">{<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">return</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN style=3D"COLOR: =
#0000ff">new</SPAN><SPAN=20
style=3D"COLOR: #000000"> ProductA1();<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlock=
End.gif"=20
align=3Dtop> }</SPAN></SPAN><SPAN style=3D"COLOR: =
#000000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN style=3D"COLOR: =
#0000ff">override</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">public</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> AbstractProductB CreateProductB()<BR><IMG=20
id=3DCodehighlighter1_463_495_Open_Image=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_463_495_Open_Text.style.display=3D'none'; =
Codehighlighter1_463_495_Closed_Image.style.display=3D'inline'; =
Codehighlighter1_463_495_Closed_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlock=
Start.gif"=20
align=3Dtop><IMG id=3DCodehighlighter1_463_495_Closed_Image =
style=3D"DISPLAY: none"=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_463_495_Closed_Text.style.display=3D'none'; =
Codehighlighter1_463_495_Open_Image.style.display=3D'inline'; =
Codehighlighter1_463_495_Open_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlo=
ck.gif"=20
align=3Dtop> </SPAN><SPAN =
id=3DCodehighlighter1_463_495_Closed_Text=20
style=3D"BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; =
DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 =
1px solid; BACKGROUND-COLOR: #ffffff"><IMG=20
src=3D"http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN=20
id=3DCodehighlighter1_463_495_Open_Text><SPAN style=3D"COLOR: =
#000000">{<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">return</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN style=3D"COLOR: =
#0000ff">new</SPAN><SPAN=20
style=3D"COLOR: #000000"> ProductB1();<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlock=
End.gif"=20
align=3Dtop> }</SPAN></SPAN><SPAN style=3D"COLOR: =
#000000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd=
.gif"=20
align=3Dtop>}</SPAN></SPAN><SPAN style=3D"COLOR: #000000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: #008000">//</SPAN><SPAN=20
style=3D"COLOR: #008000"> "ConcreteFactory2"</SPAN><SPAN=20
style=3D"COLOR: #008000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/None.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: #0000ff">class</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> ConcreteFactory2 : AbstractFactory<BR><IMG=20
id=3DCodehighlighter1_563_755_Open_Image=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_563_755_Open_Text.style.display=3D'none'; =
Codehighlighter1_563_755_Closed_Image.style.display=3D'inline'; =
Codehighlighter1_563_755_Closed_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockSta=
rt.gif"=20
align=3Dtop><IMG id=3DCodehighlighter1_563_755_Closed_Image =
style=3D"DISPLAY: none"=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_563_755_Closed_Text.style.display=3D'none'; =
Codehighlighter1_563_755_Open_Image.style.display=3D'inline'; =
Codehighlighter1_563_755_Open_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.=
gif"=20
align=3Dtop></SPAN><SPAN id=3DCodehighlighter1_563_755_Closed_Text=20
style=3D"BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; =
DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 =
1px solid; BACKGROUND-COLOR: #ffffff"><IMG=20
src=3D"http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN=20
id=3DCodehighlighter1_563_755_Open_Text><SPAN style=3D"COLOR: =
#000000">{<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN style=3D"COLOR: =
#008000">//</SPAN><SPAN=20
style=3D"COLOR: #008000"> Methods</SPAN><SPAN style=3D"COLOR: =
#008000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop></SPAN><SPAN style=3D"COLOR: =
#000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">override</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">public</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> AbstractProductA CreateProductA()<BR><IMG=20
id=3DCodehighlighter1_632_664_Open_Image=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_632_664_Open_Text.style.display=3D'none'; =
Codehighlighter1_632_664_Closed_Image.style.display=3D'inline'; =
Codehighlighter1_632_664_Closed_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlock=
Start.gif"=20
align=3Dtop><IMG id=3DCodehighlighter1_632_664_Closed_Image =
style=3D"DISPLAY: none"=20
onclick=3D"this.style.display=3D'none'; =
Codehighlighter1_632_664_Closed_Text.style.display=3D'none'; =
Codehighlighter1_632_664_Open_Image.style.display=3D'inline'; =
Codehighlighter1_632_664_Open_Text.style.display=3D'inline';"=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlo=
ck.gif"=20
align=3Dtop> </SPAN><SPAN =
id=3DCodehighlighter1_632_664_Closed_Text=20
style=3D"BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; =
DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 =
1px solid; BACKGROUND-COLOR: #ffffff"><IMG=20
src=3D"http://www.cnblogs.com/Images/dot.gif"></SPAN><SPAN=20
id=3DCodehighlighter1_632_664_Open_Text><SPAN style=3D"COLOR: =
#000000">{<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">return</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN style=3D"COLOR: =
#0000ff">new</SPAN><SPAN=20
style=3D"COLOR: #000000"> ProductA2();<BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlock=
End.gif"=20
align=3Dtop> }</SPAN></SPAN><SPAN style=3D"COLOR: =
#000000"><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop><BR><IMG=20
src=3D"http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif"=20
align=3Dtop> </SPAN><SPAN style=3D"COLOR: =
#0000ff">override</SPAN><SPAN=20
style=3D"COLOR: #000000"> </SPAN><SPAN=20
style=3D"COLOR: #0000ff">public</SPAN><SPAN=20
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -