---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------
这篇文章是我通过看张孝祥老师的7k面试题的一点感悟。
首先,作为一个面向对象的设计方法,要分清有几个对象
比如,交通灯管理系统中,对象就有,信号灯和路
银行调度系统的对象有普通客户群,VIP群和快速业务群,普通客户窗口,VIP业务窗口和快速业务窗口
其次,是要搞清楚对象内部的方法,这一点并不好理解,张孝祥老师举了一个十分经典的例子,就是人在黑板上画圆,这个画圆的方法是在圆身上,而不是人身上,人只是调用了圆的方法,即谁拥有数据(属性),谁就对外提供方法。
在交通灯管理系统里
路具有一集合个属性,就是车
路有两个方法:
①一个是随机增加车辆的方法
②一个是根据信号灯减少车辆的方法
信号灯有一个属性:
颜色,该属性具有两个值:红与绿
信号灯有两个个方法:
③改变自己状态的方法
④获取另一个信号灯当前状态的方法
银行调度系统中,所有的客户群具有一个集合属性,就是客户
具有一个方法,就是去掉当前被报号的客户
普通客户窗口和快速客户窗口有一个方法
获取自己服务人群中的第一位客户的编号
VIP客户窗口有两个方法:
获取VIP客户群中的第一位客户的编号
获取普通客户群中的第一位客户的编号
最后,就是设计方法和属性的依赖关系
由于在视频里,张老师已把具体的实现过成说的很详细了,我就简单谈谈我的看法,
首先,路:要获取当前信号灯的值,并判断是否调用方法②
每隔一定时间调用方法①
信号灯:每隔一段时间调用一次方法④
根据④的结果调用方法③
我理解的面向对象的设计还是很肤浅的,我会在以后的学习和工作中不断努力,不过我个人感觉,面向对象设计真的很有意思。
---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------