什么是OO?OOP的核心思想是什么?请简要描述您对OOP的理解

电脑杂谈  发布时间:2020-07-13 00:31:42  来源:网络整理

oop编程_oop思想_冒号课堂——编程范式与oop思想

OO(面向对象,面向对象)是当前2113计算机行业的重点. 它是1990年代5261软件开发方法的4102主流. 面向对象的概念和应用程序在1653年已经超越了编程和软件开发,并扩展到了广泛的领域. 如系统,交互界面,应用程序结构,应用程序平台,分布式系统,网络管理结构,CAD技术,人工智能等领域. OOP的三个主要思想(继承性,封装性,多态性)1. oop的基本思想

oop思想_冒号课堂——编程范式与oop思想_oop编程

OOP的某些原始思想来自Simula语言,并且在Smalltalk语言的改进和标准化过程中获得了更多扩展和对先前思想的重新注释. 可以说,OO思想与OOPL几乎是相互促进的. 与接近机器的实际计算模型的功能编程和逻辑编程不同,OOP几乎不会引入精确的数学描述,而是倾向于建立一个对象模型,该模型可以大致反映应用程序域中实体之间的关系. 本质上是一种计算模型,它更接近于人类用来识别事物的哲学观点. 这导致了一个自然的话题,什么是OOP? [D&T 1988] [BS 1991] ..在OOP中,作为计算主体的对象具有其自己的名称,状态和用于接收外部消息的接口. 在对象模型中oop思想,生成新对象,销毁旧对象,发送消息,并且响应消息构成了OOP计算模型的基础.

oop编程_oop思想_冒号课堂——编程范式与oop思想

有两种基本的生成对象的方法. 一种是基于原型对象生成新对象. 一种是基于类生成新对象. 原型的概念已在认知心理学中用于解释概念学习的增量性质. 原型模型本身是一种尝试,通过提供一个代表性的对象来生成各种新对象,从而继续产生更一致的实际应用对象. 原型委托也是OOP(一种代码共享机制)中的对象抽象. 类提供了一个或多个对象的一般描述. 从形式上看,类与类型相关,因此类等效于从该类生成的实例的集合. 这样的观点也会带来一些矛盾. 最典型的是,在继承系统下,子集(子类)对象与父集(父类)对象之间的行为兼容性可能难以实现,这是OOP经常被引用---子类型(subtype)不被引用等于子类(subclass)[Budd 2002]. 在所有对象都是对象的世界观的上下文中,基于类模型诞生了一个带有元类的新对象模型. 也就是说,该类本身也是其他类的对象. 以上三个根本不同的观点各自定义了三个基于类oop思想,基于原型和基于元类的对象模型. 而这三个对象模型导致了许多不同的编程语言(如果暂时搁置静态和动态之间的差异). 是的,我们经常联系的C ++和Java使用基于类的对象模型,但是除此之外,还有很多我们尚未与完全不同的对象模型联系的OOPL,它们使用的是另一种视图来解释OOP的含义.

oop思想_冒号课堂——编程范式与oop思想_oop编程

oop的基本思想是什么?分开组件的实现和接口,并使组件多态. 但是,两者根本不同. oop在程序构造中强调语言元素的语法. 您必须继承,使用类,使用对象,并且对象传递消息. gp不在乎是否继承,它从分析产品的分类,存在的类型以及它们的行为开始. 也就是说,两件事相等是什么意思?如何正确定义等式运算?相等运算不仅如此简单,而且您会发现“相等”的一般概念意味着两个对象部分,或者至少是基本部分相等,据此我们可以进行一般的相等运算. 让我谈谈对象的类型. 假设有一个序列序列和对该序列序列的一组操作. 那么这些操作的语义是什么?从复杂性折衷的角度来看,我们应该向用户提供什么订购顺序?在这种序列上存在哪些操作?我们需要什么样的分类?仅通过阐明这些组件的概念分类,我们才能提及实现问题: 使用模板,继承还是宏?使用什么语言和技术? gp的基本观点是使用标准分类法对抽象软件组件及其行为进行分类. 起点是构建真实,高效且独立于语言的算法和数据结构. 当然,最终的载体是语言,没有语言无法编程. Stl使用c ++,也可以使用ada来实现,和其他语言来实现,结果会有所不同,但是基本的东西是相同的. 二进制搜索和排序无处不在,这就是人们正在做的事情. 对于容器的语义,不同的语言会稍有不同. 但是,基本的区别显然是gp所依赖的语义以及语义分解. 例如,我们决定需要进行组件交换,然后指出该组件如何以不同的语言工作. 显然,重点是语义和语义分类. oop强调的是(我认为过于强调)是清楚地定义类之间的层次关系. oop告诉您如何建立层次关系,但并没有告诉您这些关系的本质.

冒号课堂——编程范式与oop思想_oop编程_oop思想

(此段不容易理解,某些术语可能需要一些时间才能拥有合适的中文翻译-翻译器

面向对象的编程方法OOP是一种仅在1990年代流行的软件编程方法. 它强调对象的“抽象”,“封装”,“继承”和“多态”. 我们说程序设计是由“数据结构” +“算法”组成的. 从宏观角度来看,OOP下的对象是以编程为中心和面向程序的. 今天我们要讨论的OOD是一个以信息为导向的对象,以用户信息为中心.


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-278253-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 鲁桓公姬允
        鲁桓公姬允

        中国应该直接将闯入领海的美国军舰扣压

      • 李宇
        李宇

        自创曲哦

      热点图片
      拼命载入中...