Java语言中面向对象特性.ppt
《Java语言中面向对象特性.ppt》由会员分享,可在线阅读,更多相关《Java语言中面向对象特性.ppt(41页珍藏版)》请在三一办公上搜索。
1、Java 语言中面向对象特性,TA:栗志果,一切皆对象 think in java,面向对象编程的基本概念和特征,什么是oop?为什么要oop?Oop的一些基本概念Oop的一些准则,1 例子:栈1)非面向对象方案struct Stack int top;int bufferSTACK_SIZE;void init(Stack,bool push(Stack,else s.top+;s.buffers.top=i;return true;,bool pop(Stack,else i=s.buffers.top;s.top-;return true;,Stack st;int x;init(st)
2、;push(st,12);pop(st,x);,2)面向对象方案class StackPrivate:int top;int bufferSTACK_SIZE;public:Stack()top=-1;bool push(int i);if(top=STACK_SIZE-1)cout“Stack is overflow.n”;return false;,else top+;buffertop=i;return true;,bool pop(int,Stack st;int x;st.push(12);st.pop(x);st.top=-1;/errorst.top+;/errorst.buff
3、erst.top=12;/error,3)两种方案的简单比较方案1)中对栈的操作可以通过提供的函数来实现,也可以直接在栈的数据表示上直接进行;方案2)中只能通过提供的函数来操作栈。直接操作数据的弊病在于:不安全,易产生错误,并且定位错误较为困难。一旦数据表示发生变化,将影响所有的操作。方案1)需要显式地对栈进行初始化,方案2)则否。,2 定义面向对象程序设计是把程序构造成由若干对象组成,每个对象由一些数据和对这些数据所实施的操作构成;对数据的操作是通过向包含数据的对象发送消息来实现(调用对象的操作);对象的特性(数据与操作)由(对象)类来描述,一个类的特性可以从其它的类继承。,上述的定义包含了
4、下面的基本概念:对象:对象式计算的基本单位,由:接口,数据,操作构成。通信:引起对象式计算的唯一方式。类:对象特性的描述。继承:复用机制。,为什么要oop?,一个好的软件开发方法或技术的评价标准:开发效率和软件质量保证。开发效率指方法使用的难易程度和方法缩短开发周期的程度等。,软件质量包括:外部质量和内部质量。外部质量:软件中与用户有关的质量因素,这里的用户包括最终用户和二次开发用户。包括:正确性(Correctness)、效率(Efficiency)、健壮性或鲁棒性(Robustness)、可靠性(Reliability)、可用性(Usability)和可复用性(Reusability)等方
5、面。,内部质量:软件中与软件开发人员有关的质量因素。包括:可读性(Readability)和可维护性(maintainability)等。外部质量靠内部质量来保证。,下面就能够保证软件质量的几个程序设计机制来说明面向对象程序设计的优势:1 抽象(Abstraction)处理大而复杂问题的重要手段是抽象:强调事物本质的东西。对程序抽象而言,一个语言结构的抽象强调的是该结构外部可观察到的行为,与该结构的内部实现无关。,过程抽象(Procedural Abstraction)结构化程序设计是其典型代表。把子程序的接口和实现分开,使用者只需要知道子程序 的接口(功能和参数)而不需要关心其内部实现,适合
6、于 基于功能分解的逐步精化(Step-wise)程序设计。过程抽象的不足之处在于:数据与操作的描述分离。数据缺乏保护。不能适应需求的改变。,数据抽象(Data Abstraction)以数据为中心,把数据及其操作作为一个整体(对象)来进行描述,对数据的操作由包含数据的对象来提供。面向对象程序设计强调的是数据抽象,一方面加强了数据保护,另一方面实现了对现实世界活动的直接模拟,能较好地适应需求的变化。不足之处在于:对系统的整体功能缺乏清楚的描述。,2 封装(Encapsulation)把一个语言结构的具体实现细节作为一个黑匣子对该结构的使用者隐藏起来的一种机制,从而符合信息隐藏(Informati
7、on Hiding)原则。封装考虑的是内部实现,抽象考虑的是外部行为。,过程封装实现了操作的封装,而数据是公开的。数据封装实现了数据及其操作的封装。面向对象程序设计强调的是数据封装。,面向对象的基本概念,1 对象与类(Object&Class)对象是由数据(数据成员、成员变量、实例变量、对象的局部变量)及其操作(操作、方法,成员函数、消息处理过程)所构成的封装体。类是对象特性的描述,一个类刻画了一组具有相同特性的对象,是创建对象的模板。对象是类的实例。对象属于值的范畴,而类属于类型的范畴。对象与类实现数据抽象、封装、模块,2 继承(Inheritance)与聚集(Aggregation)继承和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 语言 面向 对象 特性

链接地址:https://www.31ppt.com/p-6510158.html