奇妙数据

理解面向对象编程思想
Python从设计之初就已经是一门面向对象的语言常见的编程思想有面向过程和面向对象,很多语言的语法各不相同,但是,...
扫描右侧二维码阅读全文
29
2018/10

理解面向对象编程思想

Python从设计之初就已经是一门面向对象的语言

常见的编程思想有面向过程和面向对象,很多语言的语法各不相同,但是,基本的编程思想却是差不多的!所谓的面向对象,就是在编程的时候尽可能的去模拟现实世界!现实世界中,任何一个操作(动作)或者是任何一个业务逻辑的实现都需要一个实体去完成,实体就是操作(动作)的支配者,没有实体,就没有动作发生!

面向对象理解.jpg

面向对象编程的三大特性

继承、封装、多态。(四大基础特性还包括:抽象)

面向对象技术简介

  • 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
  • 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。
  • 数据成员:类变量或者实例变量, 用于处理类及其实例对象的相关的数据。
  • 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。
  • 实例变量:定义在方法中的变量,只作用于当前实例的类。
  • 继承:即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个Dog类型的对象派生自Animal类,这是模拟"是一个(is-a)"关系(例图,Dog是一个Animal)。
  • 实例化:创建一个类的实例,类的具体对象。
  • 方法:类中定义的函数。
  • 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。

面向对象的编程产生的历史原因

由于面向过程编程在构造系统时,无法解决重用,维护,扩展的问题,而且逻辑过于复杂,代码晦涩难懂,因此,人们开始想能不能让计算机直接模拟现实的环境,以人类解决问题的方法,思路,习惯和步骤来设计相应的应用程序。于是,面向对象的编程思想就产生了。面向对象的编程的主要思想是把构成问题的各个事物分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述一个事物在解决问题的过程中经历的步骤和行为。对象作为程序的基本单位,将程序和数据封装其中,以提高程序的重用性,灵活性和可扩展性。类是创建对象的模板,一个类可以创建多个对象。对象是类的实例化。类是 抽象的,不占用存储空间;而对象具体的,占用存储空间。

面向对象与面向过程的对比

1,都可以实现代码重用,以实现模块化编程,但是面向对象的模块化更深,数据更封闭,也更加安全!
2,面向对象的思维方式更加贴近现实生活,所以也更容易解决大型的复杂的业务逻辑!
3,从前期开发的角度来看,面向对象比面向过程要复杂的多,但是从维护和升级的角度来看,面向对象远比面向过程简单!

参考资料

  1. Python 面向对象
  2. 面向对象编程思想(OOP)
  3. 面向对象编程思想(封装继承多态接口)
  4. 学会面向对象编程只需要五分钟,不信你看看
最后修改:2018 年 10 月 29 日 03 : 44 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论