版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、例子例子 有一个美丽的善良的姑娘有一个美丽的善良的姑娘 很多的追求者很多的追求者 追求者队伍会不断的变换追求者队伍会不断的变换 追求者最喜欢问的话追求者最喜欢问的话“你在干嘛你在干嘛” 善良的姑娘不断的回复善良的姑娘不断的回复 困惑困惑 姑娘:不断回复给很多人姑娘:不断回复给很多人 追求者:不断询问追求者:不断询问解决解决 用关注的方式用关注的方式 如果如果boy关注了女孩,则可以通过数据绑定关注了女孩,则可以通过数据绑定方法获得女孩的状态列表。方法获得女孩的状态列表。 女孩会更新自己的状态女孩会更新自己的状态public interface IPrincess void Add(IBoy b
2、);void Remove(IBoy b);void Notify();public class SnowWhite implements IPrincess String state;ArrayList boys=new ArrayList();Overridepublic void Add(IBoy b) boys.add(b);Overridepublic void Remove(IBoy b) boys.remove(b);Overridepublic void Notify() for(IBoy b:boys)b.Update();public interface IBoy void
3、 Update();public class Qiang implements IBoy Overridepublic void Update() System.out.println(小强说状态已更改);public class Cai implements IBoy Overridepublic void Update() System.out.println(状态已更改-Cai);public class XiaoMing public static void main(String args) IBoy qiang=new Qiang();IBoy cai =new Cai();Sno
4、wWhite sw=new SnowWhite();sw.Add(qiang);sw.Add(cai);sw.state =吃饭;sw.Notify();练习练习 订阅新闻订阅新闻 有个新闻自动发布系统,用户可以有个新闻自动发布系统,用户可以订阅订阅或或取消订阅取消订阅该系统,当该系统有该系统,当该系统有新内容新内容时,时,会通知给会通知给订阅它的订阅它的用户。用户。 订阅用户可以通过订阅用户可以通过update方法,获得新闻方法,获得新闻更新。更新。 画类图,写完整代码画类图,写完整代码 public interface INews void Add(IUser u);void Remove
5、(IUser u);void Notify();public interface IUser void Update();public class Seven implements IUser Overridepublic void Update() System.out.println(我的新闻列表已更新-Seven);public class News implements INews public String title,contex;ArrayList myUsers=new ArrayList();Overridepublic void Add(IUser u) myUsers.a
6、dd(u);Overridepublic void Remove(IUser u) myUsers.remove(u);Overridepublic void Notify() for(IUser u:myUsers)u.Update();public class XiaoMing public static void main(String args) IUser seven =new Seven();News news=new News();news.Add(seven);news.title=新标题;news.contex=新内容;news.Notify(); P201 State 意图意图 允许一个对象在其内部改变时改变它的行允许一个对象在其内部改变时改变它的行为,对象看起来似乎修改了它的类为,对象看起来似乎修改了它的类 若一个对象有多种状态,则将它的状态
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 暖暖的身体课件
- 部编版四年级语文上册第20课《陀螺》教学设计
- 2024版口罩生产与回收再利用服务合同3篇
- 《客户关系管理实务》电子教案 5客户关系管理的发展历程
- 粘多糖贮积症病因介绍
- 男性性欲障碍病因介绍
- 智能制造生产线技术及应用 教案 4-3 机器人坐标系建立
- 《债券定价及风险》课件
- 《说课糖尿病》课件
- 生理学课件细胞的基本功能
- 特斯拉技术培训课件
- 北京市市属医院建筑合理用能指南
- 高空坠物防护培训
- 资助办主任述职报告
- 2023-2024学年黑龙江省黑河市名校九年级上册数学期末达标检测模拟试题(含解析)
- 构成(平面色彩立体)课件
- 南京大屠杀遇难者纪念馆实践报告 (修改)
- 空乘人员生涯发展展示
- 2024年大庆医学高等专科学校高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 最美铁路人刘晓云
- 2022年广东省深圳市第九届“鹏程杯”八年级邀请赛数学试卷
评论
0/150
提交评论