java设计模式类图大全


java设计模式


1:策略模式类图:
287a6a66-f04c-44e9-8f7f-b9142eead2f6.png

2:单例模式类图: 8ffdc78d-23df-41ce-84ad-c91637a5aa94.png

3:多例模式类图:

4:工厂方法类图: a71889f9-5ea7-42ef-8a27-df547a72a877.png
40f07944-a371-4611-a378-ccfd25672e53.png
5:抽象工厂模式类图:
5aaa5e70-f337-4050-8f5c-e78f3e2fcea3.png

1ed53b16-bab5-4517-a61f-054ffd6473ae.png
6:门面模式类图:
978796a7-2b83-4769-86d3-b4ac8d338f0d.png

96276db6-c7d0-4312-877f-44269b81188f.png
7:适配器模式类图:
00d69e81-e502-44ad-ac69-8560889b21ec.png
b6288c2c-e27c-4a7d-a928-a12534581a26.png
8:模版方法模型类图:
Image.png?resizeSmall&width=832
c9b6ae2d-f04d-445e-b842-732e5fdc145e.png
Image.png?resizeSmall&width=832
11dbf3ea-815f-4bcc-8e44-be6cfc9b894f.png
9:建造者模式类图:
82d9c4a7-41a5-4dcc-889a-429363f11a37.png
0795a488-4107-4c3f-893e-75538e0c2fbc.png
ba5859a9-1d2c-4cfa-b318-9f3e688ed6dd.png

10:桥梁模式类图:
10e23580-bb03-4540-8e13-7bbbff96ea5f.png
c4c46c92-6f97-4672-8f0e-010ff9da2dff.png

7e0a2d5d-68ef-4046-9a02-ac2fbfb7ddc9.png

7ae9f035-4f16-4a2f-8a44-27cf11ab5c75.png
11:命令模式类图:
fd9c39ec-1af1-4c5c-bf08-5a5b57c678f2.png
3f7cdbf8-24c7-4e42-9cf2-94bb7d714911.png
0e9d2626-cbd8-4acb-80b4-db2a761236da.png
12:装饰模式类图:
63edfb41-30e4-4df0-bbb0-639a8b637730.png
4e2fd79c-1239-4247-938b-46eb27874ea9.png

0bb17264-411e-4163-af71-2d988528b37a.png
f3153d78-db08-4a1f-9a7d-0c992e201868.png
3ee61dd1-716a-45b8-8c9d-85f4434fc60a.png
13:迭代器模式类图:
05f45293-8e19-4e01-975d-b1f9236ce4f7.png
144e7104-6e8f-4f8c-9018-1cbc4409bfa7.png
62d6b4ef-73e4-41fe-8b87-4da3d3f00c71.png

14:组合模式类图:
f3b65378-d7b7-4b44-a7fb-6c57731d4dac.png
ade3dfae-74f7-44c1-a853-6dbda977bee3.png

13e713f4-3df6-4403-8d60-c285208ec137.png
2ff5bc8d-47c5-4b1d-bce4-10f3d5d80267.png
0e5095ac-291c-4426-81a7-ed2767c90d2c.png
8880b507-c926-41d4-9a3d-771ef5c96f98.png
b398b5ba-61d1-4f8f-8d3e-b20ed4fe6701.png
0ef1bdbd-79be-486a-920e-dc4707add457.png
15:观察者模式类图:
547397cb-6c56-474a-a945-3e1c8896c79f.png
09e7187a-0574-4cbf-9c10-1faf44b3dc37.png
5020adba-4338-4161-a77f-529b4385ba2d.png

ec0a003f-c70e-40e2-8611-4e07d8fcbcf8.png
d2ccf95e-8bbb-4bc4-a631-8286f890b8a8.png
16:责任链模式类图:
98c18d1a-feed-4ee9-b950-f54721058384.png
e0813bf0-4ed0-4ffd-adfd-986c462abec2.png
39c3ef16-4db2-4138-951d-483d3840cc50.png
b1660d7f-c0f1-4983-a78d-97270c7b626b.png
4a1025ec-f0ff-4d1a-85d3-233fb260db4e.png
17:访问者模式类图:
d2d73a41-7578-4a1f-a12a-2178d077e5e0.png
8f521c46-f639-47de-8f98-edc10ed9f89a.png
ff08f5b9-9b3a-4ee6-a514-3a3e2b4442c5.png
e6d8c374-6b31-40c3-8947-a8d7709a41df.png
2dfc3cd5-f104-4e6d-b4ee-7c98634976c0.png

74206b6f-0e66-4e2c-94d0-a3a8b0d003d4.png
20311da3-a39c-4793-af08-f6459676e779.png
e154b842-70f1-4d88-9c49-1728595714d5.png
18:状态模式类图:
da81c78d-9274-47ab-bea8-13830ffb1e6a.png

f1f105d0-1191-4194-8a4a-f9c5766704c5.png
af55522d-9db0-45c3-b40a-987c50dce324.png

7c5eafab-33a8-4c88-9d74-8b7c7adb5e20.png



本文出自 “陈砚羲” 博客,谢绝转载!

转载于:https://my.oschina.net/u/143244/blog/303964

单例模式的扩展及应用。 编写一个类LimitInstanceClass,该类最多可以实例化指定个数实例。实例的个数用配置文件InstanceLimit.cfg指定。例如,如果InstanceLimit.cfg的内容为2,则LimitInstanceClass最多可以同时存在2个对象。LimitInstanceClass的对象有一个整型成员变量id,保存对象的编号;有一个boolean型变量isBusy,如果该变量的值为true,表示该对象正在被使用,否则该对象空闲;如果存在空闲的对象,则调用LimitInstanceClass的getInstance()方法会返回一个空闲对象,同时将该对象的isBusy置为true;如果不存在空闲对象则返回null。LimitInstanceClass有一个release()方法,该方法将对象的isBusy置为false。LimitInstanceClass还有一个String类型的成员变量accessMessage,以及一个成员方法writeAccessMessage(String message),该方法将参数message追加到accessMessage。LimitInstanceClass的printAccessMessage()方法输出accessMessage的内容。 编写一个线程类AccessLimitInstanceClassThread,在其run()方法中获取一个LimitInstanceClass对象,调用获得的对象的writeAccessMessage(String message)将自己的线程名写入accessMessage,随机休眠0-5秒,再调用printAccessMessage(),最后调用release()方法。 编写一个UseLimitInstanceClass类,在其main方法中实例化10个AccessLimitInstanceClassThread线程对象,并启动各个线程。 设置InstanceLimit.cfg的内容为3,写出你的程序的运行结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值