`
王斌_code
  • 浏览: 31436 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

面向对象状态的编程思想

阅读更多
基于面向对象的思想,在我们所考虑的问题中,所有的问题都是对象,对象可以由一个个的小对象组成,即对象的组合、聚合等关系。为了更加抽象或者更加容易编写我们的代码,我们首先基于以下两个假设
1.对象的行为(方法)都是为了改变对象的属性(或称为对象的状态),而且只能改变对象的属性,任何不改变对象状态的行为都是无意义的,或者称可被行为包含的功能
2.程序的最终结果都是对象的不同状态下的展示,即在某一时刻基于对象的即时状态

基于上述两个所设,我们可以得到一个面向对象状态的编程思想,首先,我们需要对上述1的假设做进一步的阐述:
基于假设2,程序的结果是对象的即刻展示,所有,有些对象要有一个展示自己的状态的方法,此方法可以将对象的所有属性展示给观察者,但此方法违背了假设1,因为它不需要修改对象的状态。因此,我们对假设1稍做修改,即除了展示方法(我们称超级方法)外,所有行为...,基于上述假设,我们根据具不具有展示方法为依据把所有对象分为两类:可展对象、不可展对象
它们可以有如下的关系


面向状态思想解决了一个问题,他把所有的东西都视为对象,所有要解决的问题都视为对象,对象是靠一种组合等方式来构建,由小对象构建成大对象,对象的状态是所有属性的集合。比如我们来说一台电脑,它就是一个对象,它是由显示器,键盘等构成的,而显示器、键盘等又是对象。
我们来看一下现实生活中,面向状态的思想的体现:
在现实生活中,每个事物都可以看作是对象(实例),每个事物都有其在不同时刻的状态,我们的现实世界,只不过是有些事物通过一个光来展现出来的,而光即是一个展示方法,这些被展示出来的事物,都具有展示的方法,它们就是可展对象,而有些对象,是隐藏在有些对象之内的,它就不可展。可展对象都被一个展示方法(光)展现


分享到:
评论

相关推荐

    基于C++宾馆客房管理系统的毕业设计,采用面向对象的编程思想,MySQL作为后台数据库,保证数据的安全性和稳定性

    本系统采用C++语言进行开发,采用面向对象的编程思想,具有良好的可扩展性和可维护性。同时,本系统采用MySQL作为后台数据库,保证数据的安全性和稳定性。 ## 基于C++的宾馆客房管理系统是一款功能强大、易用性高...

    基于STM32F103移植华为LiteOS_任务挂起与恢复_面向对象编程思想之按键状态机

    华为LiteOS_任务挂起与恢复_面向对象编程思想之按键状态机,都是免费开源的,大家自行下载即可

    结构化和面向对象编程方法

    面向对象编程强调对象的行为和状态,并提供了封装、继承和多态等特性。 相较于结构化编程,面向对象编程可以更好地模拟真实世界中的问题,使得代码更具可读性、可维护性和可扩展性。同时,面向对象编程也更加符合...

    什么是面向对象的程序设计

    面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP达到了软件工程的三个主要目标:...

    《面向对象编程与设计(Java)》课后作业及参考解答.pdf

    而面向对象是把构成问题的各个方面分解成各个对象,并用代码来实现对象之间的 交互——面向对象是以事物为中心的编程思想。 (1)面向过程程序设计方法的示例 #include "stdio.h" int add(int a, int b){ //对数据...

    Java的面向对象与类.docx

    面向对象是一种编程思想,它以人类习惯的思维方式,用对象来理解和分析问题,使开发软件的方法与过程尽可能接近人类的思维方式。 面向对象程序设计(Object Oriented Programming,简称OOP)是一种新的编程范式,它将...

    设计模式:可复用面向对象软件的基础--详细书签版

    本书假设你至少已经比较熟悉一种面向对象编程语言,并且有一定的面向对象设计经验。当我们提及“类型”和“多态”,或“接口”继承与“实现”继承的关系时,你应该对这些概念了然于胸,而不必迫不及待地翻阅手头的...

    有关Java面向对象问题整理汇总

    从20世纪60年代提出面向对象的概念到现在,它已经发展成为一种比较成熟的编程思想,其以人类习惯的思维方式,用对象来理解和分析问题,使开发软件的方法与过程尽可能接近人类认识的世界、解决问题的思维方法与过程。

    python面向对象概念及练习题.doc

    面向对象及练习题 面向对象 1.1面向对象概念 面向对象是一种编程思想,是对现实世界中的事物进行抽象的方式。应用到代码 编程设计中,是一种建立现实世界事物模型的方式。 1.2 面向对象和面向过程区别 面向过程关注...

    python面向对象概念及练习题(1).doc

    面向对象及练习题 面向对象 面向对象概念 面向对象是一种编程思想,是对现实世界中的事物进行抽象的方式。应用到代码 编程设计中,是一种建立现实世界事物模型的方式。 面向对象和面向过程区别 面向过程关注的是完成...

    C++编程思想.txt

    第一个面向对象的程序设计语言是 6 0年代开发的S i m u l a - 6 7。其目的是为了解决模拟问题。 典型的模拟问题是银行出纳业务,包括出纳部门、顾客、业务、货币的单位等大量的“对象”。 把那些在程序执行期间除了...

    跟我学Java面向对象程序设计技术及应用——Java中的面向对象技术(第1部分).pdf

    1.1.1 面向对象技术基础 1、面向对象(OO)的基本概念 (1)面向对象的基本思想 面向对象是一种新兴的程序设计方法,或者是一种新的程序设计规范(paradigm)。其基本 思想是使用对象、类、继承、封装、消息等基本...

    面向对象课程设计基于C++实现的教室管理系统源码+课程设计报告

    程序运用面向对象编程思想进行设计。核心有教室类、预约信息类、上课信息类。 教室类: 成员:校区号、教学楼号、教室号、教室类型、座位数、预约状态、预约数、预约信息、上课数、上课信息。 函数:默认构造函数、...

    python学习之面向对象【入门初级篇】

    前言 ... 面向对象的基本哲学:世界由具有各自运动规律和内部状态的对象组成,对象之间相互作用和通讯构成了世界。 唯一性,世界没有两片相同的树叶,同样的没有相同的对象。 分类性,分类是对现

    JAVA面向过程的程序设计

    l –面向对象问题求解关心的不仅仅是孤立的单个过程,而是孕育所有这些过程的母体系统 –它能够用计算机逻辑来模拟、描述系统本身,包括系统的组成,系统的各种可能状态,以及系统中可能产生的各种过程与过程引起的...

    python实验五.py

    体会利用面向对象编程的思想。 4、设计一个“超市进销存管理系统”,要求如下: (1)系统包括7种操作,分别是:1查询所有商品;2添加商品;3修改商品;4.删除商品;5卖出端口;6.汇总;-1.退出系统。 (2)选择操作...

    操作系统课程设计 模拟磁盘文件管理的程序

    一、 课程设计内容 ⑴ 自定义磁盘文件管理的数据结构; ⑵ 能够自由创建、修改、删除文件; ⑶ 文件具有一定自定义的属性; ⑷ 能够显示当前系统文件的状态。

    综采工作面“三机”运动仿真研究

    针对目前综采工作面“三机”运动仿真研究较少涉及单机部件联动过程、不能详细展现单机运动状态的问题,结合虚拟仿真技术建立“三机”几何模型,在对“三机”姿态进行解析的基础上,在Unity3D平台下通过脚本组件,运用...

    基于Java俄罗斯方块游戏的设计与开发大学毕业论文

    俄罗斯方块是一款非常经典的游戏,风靡全球,,经久不衰,是学习面向对象的编程思想的理想实例。本毕业设计论文介绍用JAVA语言设计一个“俄罗斯方块”游戏的过程,整个游戏系统是一个应用程序(Java Application),...

Global site tag (gtag.js) - Google Analytics