面向对象是OO(OOA/OOD)技术的一个核心吧,UML也是对面向对象的一种建模语言,所以学好UML还是要从面向对象入手。
面向对象的基本概念
什么是对象
对象相信大家已经很熟悉了,在接触VB 的时候老师就给我们讲过什么是对象的概念,我们自己本身就是一个对象,对象相当于一个实体,自然界中存在的实体都可以把它看做一个对象。对象有三种特性 状态行为 标识。
我们把教师看做一个对象,老师的状态 有静态信息 性别 年龄 和工号也有动态行为 讲课 标识 就是名字
什么是类
类是对一组具有相同属性、相同操作、相同关系和相同语义的对象的抽象
面向对象技术的基本元素
抽象
抽象就是从众多的事物中抽取具有相同属性、相同操作、相同关系的一类事物,面向对象方法不仅支持对过程进行抽象,而且支持对数据进行抽象,抽象的好坏对设计有很大的影响。
封装
封装就是把对象的状态和行为绑到一起的机制,是对象形成一个独立的整体,并且尽可能地移仓对象内部细节,与外部的联系只能通过外部接口来实现。封装是对客户隐藏实现的一个机制,比如说学生的姓名,年龄等私人信息我们不想让外界知道我们就可以将其进行封装,设为私有,外界是不能直接获得
拿一个电视机来说,我们接触到的仅仅是外部接口,我们在打开电视机的时候出来了画面,但是我们并不关心其内部结构,不关心它能播放画面的原理是怎样实现的,我们把它的实现封装到电视机里面,我们看到的 并没有错综复杂的线而是线的内部连接封装到了电视机中。
继承
子承父类,继承就意味着“自动地拥有”,可以继承
多态
生物中我们学过多肽,但是此多肽非彼多态。多态是指两个或多个属于不同类的对象,对于同一个消息或方法调用所做出的不同的动作。就像在一个演奏会中,发出演奏的命令,小提琴和钢琴都会发出声音,但是会发出不一样的声音,这就是多态。
接口
接口是有一组对操作的定义组成的,它用于描述一个类或构建的一个服务的操作集。拿一个例子做比喻, 在外面吃饭点餐的时候,都有一个菜单对菜的价格做了一个详细的说明,我们可以把这些看做一个接口,接口只是提供一种服务,它只是描述一类事物而不提供做的方法。
总结:面向的一个好处就是对代码实现了复用,减少了代码量,在开发其他的系统时我们可以根据已开发系统相似的功能,用继承的思想实现对代码的复用。面向对象的思想虽然还没有深入,但是对于多态、封装、继承有了初步的了解。