这一集主要讲的是面向对象技术
1、基本原则
抽象:我理解的抽象就是将事物用另一种方式更加形象的表达出来,突出想要表达的部分,比如可以用一张图表示一个场景,就是将场景抽象。
封装:就是对客户隐藏实现,客户看到的仅仅是接口,比如遥控机控制电视,我们都用过遥控机,但我们并不用研究遥控机的内部结构。
模块化:把一个系统分成几个模块,便于研究,例如:
层次性:表达软件的类之间的依赖关系,例如:
2、基本概念
对象——Object
在视频中提到,对象可以是物理实体、概念实体、软件实体...我觉得我可以理解为对象可以是任何事物,一个苹果,一个人
对象描述一个事物,具有状态(描述静态的信息)、行为(动态信息)、标识,比如这幅图片
状态:以下是老师的信息,老师的名字、工号等等,对象的状态是可改变的
行为:反映了一个对象将如何响应其他对象,像下图,排课老师排课,然后通知任课老师,任课老师觉得可以执行,于是接受排课,回应排课老师
标识:可以表示这个对象,比如名字
所以得出以下结论
老师是一个对象
状态:名字,年龄,性别,工资号
动态行为:讲课
标识:名字
对象的表示:a.只写类的名字 b.只写对象的名字 c.写类和对象的名字
类——Class
类是对一组具有相同属性,行为,关系和语义的对象描述
类是对象的抽象定义,定义了属性和方法,提供一个创建对象的模板。
一个对象是一个类的实例。
比如:苹果是一个类,红富士是这个类中的一个对象
视频中的例子:左边是课程的属性,右边是课程的方法
类的表示
即
类的名字
|
属性
|
方法 |
类的名字是必须要写的,属性和方法没有可以不写
属性——Attitudes
即对实例赋予状态值
操作——Operation
我理解的就是要干什么,比如下例:添加、删除学生,设置开始、结束时间
接口——Interface(Polymorphism)
这一集就讲了这些...未完待续...