面向对象技术分析

     面向对象之前有一篇博客是在陈述面向对象和面向过程的区别,而这次就来分析一下究竟什么是面向对象?

 

1.面向对象是一种思想,是基于面向过程而言的,是一种把面向对象的思想应用于软件开发过程中的方法,简称“OO”

2.面向对象是将功能通过对象来实现,将功能封装进对象之中,让对象去实现具体的细节;

3.面向对象总体来说是对数据一种优化,操作起来更加的方便,简化了过程。

所以面向对象的在使用起来大大减小我们的工作负担。

下面是我对面向对象技术的一些理解:

一、面向对象的三大特点:  封装性,继承性,动态性

封装性

概念:

隐藏对象的属性和实现细节,仅对外提供公共访问方式,在一个对象内部,一些数据是私有的不能被外部所访问

好处:

将外部隔离,便于使用,提供复用性和安全性

继承性

概念:

所谓继承就是让一个类型的对象获得另一个对象的属性和方法,继承是提高代码复用性和多态性的基础,在无需重新编写原来的类的情况下对这些功能进行扩展  分为父类和子类,  被继承的是“父类”,继承的是子类

 

动态性

概念:所谓多态就是指一个类实例的相同方法在不同情形有不同表现形式

例子: 

在一个大型的演奏会现场,相同的一个指挥家,但是他面对的是不同的人使用着不同的乐器,但是他们都通过看同一个指挥家来演奏不一样的乐器,出来的声音也是不一样的。这就是多态性。

二、面向对象技术基本概念:

1.对象 (object)

       指现实世界中各种各样的实体,既可以指具体的事物,也可以指抽象的事物。

       它具有三个特征: 状态(静态信息),行为(动态),标识 

       举例:比如一个老师正在上课,可以想想成一个画面

在这个图片中有很多对象:老师,黑板,书等,我们以老师为例子

状态:指静态信息,那么身高,年龄都是状态

行为:走路,上课等动态行为

标识:姓名

2.类(class):

类就是具有相似内部状态和运行规律的实体的集合。类定义了属性和方法,提供了一个创建对象的模板

 

类和对象的关系可以总结为:
(1)每一个对象都是某一个类的实例。
(2)每一个类在某一时刻都有零或更多的实例。
(3)类是静态的,它们的存在、语义和关系在程序执行前就已经定义好了,对象是动态的,它们在程序执行时可以被创建和删除。
(4)类是生成对象的模板。

3.属性:

属性是类中所定义的数据,他是对客观世界实体所具有的性质的抽象

类的每个实例都有自己特有的属性值。比如姓名、性别就可以作为员工的属性而出现。

4.组件:

组件是软件系统可替换的,物理的组成部分,它封装了实现体(实现某个智能),并提供了一组接口的实现方法,有人将组件理解为具有一定功能,能够独立工作,或同其他组件组合起来协作工作的对象

5.接口:

接口就是对操作规范的说明,只能说明这个操作应该做什么,但是没有定义操作如何去做,接口可以理解成类的一个特例,只规定实现此接口的操作方法,而真正的实现细节需要交由实现该接口的类去完成

6.包:

 

关系:

1.泛化关系: 

泛化关系也叫作继承关系指的是一个类继承另一个类的功能,并且可以增加它自己的新功能。 

通过关键字 extends 来明确标识,在UML中继承是用一条带空心三角箭头的实线来表示,从子类指向父类

2.实现关系:

指的是一个class类实现interface接口的功能,实现是类与接口之间最常见的关系

用implements来明确标识,在UML中用一条带空心三角箭头的虚线来表示

3.依赖关系:

依赖就是一个类A用了另外一个类B,但是类B的变化会影响到类A

在UML中依赖关系有A类指向B类,带箭头虚线表示

4.关联关系:

体现的是俩个类之间的依赖关系,比如我和我的朋友,这种关系不存在临时的,一般是长期性的,而且双方的关系都是平等的

在uml中用带箭头实现表示

面向对象分析:OOA

面向对象设计:OOD

面向对象实现:OOA

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
面向对象分析与设计(第3版)》是UML创始人Grady Booch的代表作之一,书中介绍的概念都基于牢固的理论基础。同时,《面向对象分析与设计(第3版)》又是一本注重实效的书,面向架构师和软件开发者等软件工程实践者的实际需要。《面向对象分析与设计(第3版)》通过大量例子说明了基本概念,解释了方法,并展示了在不同领域的成功应用。全书分为理论和应用两部分。理论部分深刻剖析了面向对象分析与设计(OOAD)的概念和方法。应用部分连续列出了5个不同型、不同领域的应用,描述如何从初始阶段到移交阶段将OOAD理论和方法应用到项目中。应用部分所涉及的领域包括系统架构、数据获取、密码分析、控制系统和Web开发,还给出了一些关于重要问题的有效建议,包括分、实现策略和高性价比的项目管理。书中的表示法采用最新的UML 2.0,因此《面向对象分析与设计(第3版)》是学习UML 2.0不可多得的参考书。《面向对象分析与设计(第3版)》作者基于长期丰富的经验,提出了改进的对象开发方法,用于解决系统和软件开发者面临的复杂问题,非常适合实际系统和软件的开发者、系统分析师或构架师、项目经理阅读。《面向对象分析与设计(第3版)》主要阐述了软件开发的方法,也可以作为高等院校软件工程和高级编程课程的教材使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值