Python3基础:08_01_面向对象编程(OOP)——面向对象编程的概念

0.前言

  Python是一种高级编程语言,与C++、Java等一样,是一种面向对象的编程语言。这篇博文将介绍面向对象编程的特点以及面对对象技术的简介。
  面向对象编程是Python基础篇的最后一部分内容,到此为止算是入门了吧。
  由于内容比较多,我将拆分成多篇博文作总结。

版权声明:资料摘录自菜鸟教程。



  若觉得本篇内容冗杂,可直接点击下面的链接看下一篇博文,这篇博文更多的是对总体概念的概述。(#^.^#)

Python3基础:08_02_面向对象编程(OOP)——类和对象
Python3基础:08_03_面向对象编程(OOP)——私有属性方法和公有属性方法
Python3基础:08_04_面向对象编程(OOP)——单继承和多继承


1.面向对象编程的特点(对比与面向过程编程)

面向过程特点(强调怎么做):

  • 1.注重 步骤与过程,不注重职责分工。
  • 2.如果需求复杂,代码会变得复杂
  • 3.开发复杂项目,没有固定的套路,开发难度大。

面向对象特点(强调谁来做):

  • 1.注重 对象 和 职责,不同的对象承担不同的责任
  • 2.更加适合应对复杂的需求变化,是专门应对复杂项目开发,提供的固定套路。
  • 3.需要在面向过程的基础上,再学习一些面向对象的语法


2.面对对象技术简介

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

核心技术:

  • 抽象:把一群具有相同特征或者行为的事物抽象一个统一名称。
  • 封装:根据职责将属性和方法封装到一个抽象的类中。
  • 继承:实现代码的重用,相同的代码不需要重复的编写
  • 多态:不同的对象调用相同的方法,产生不同的执行结果,增加代码的灵活度。

创建类的基本语法框架:
class 类名:
  def 方法1(self,参数列表)
  pass
  def 方法2(self,参数列表)
  pass
  …


类的内置方法:

方法名 说明
__init__ 构造函数,在生成对象时调用
__del__ 析构函数,释放对象时使用
__repr__ 打印,转换
__setitem__ 按照索引赋值
__getitem__ 按照索引获取值
__len__ 获得长度
__cmp__ 比较运算
__call__ 函数调用
__add__ 加运算
__sub__ 减运算
__mul__ 乘运算
__truediv__ 除运算
__mod__ 求余运算
__pow__ 乘方


时间:2019年5月2日19:47:33


你可能感兴趣的:(Python3基础部分)