面向对象语言

面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。语言中提供了类、继承等成分,有识认性、多态性、类别性和继承性四个主要特点。

python具备这些特点,所以它是面向对象语言。

面向对象编程

面向对象程序设计(Object Oriented Programming)作为一种新方法,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征,只能对事物特征和变化规律的一种抽象,且在它所涉及的范围内更普遍、更集中、更深刻地描述客体的特征。通过建立模型而达到的抽象是人们对客体认识的深化。

python的程序设计,以这种方式进行,叫面向对象编程。

python面向对象编程

举个例子:

class animal(object):
    class dog(object): 
        def jinmao():
            print("金毛狗")

    class fish(object): 
        def jinqiangyu():
            print("金枪鱼")
        def luofeiyu():
            print("罗非鱼")

animal.dog.jinmao()

如上,使用class定义了一个类,并继承了object。animal是一个大类,很明显是动物的意思,具有识认性;动物有很多种,具有类别性;多态性如何理解?对于金枪鱼,你可以叫它金枪鱼,也可以叫它鱼,还可以叫它动物。具有多种形态的叫法(不同功能),称之为多态。

这就是面向对象编程。

面向对象编程的做法是,当解决一个问题的时候,面向对象会把事物抽象成对象的概念,就是说这个问题里面有哪些对象,然后给对象赋一些属性和方法,然后让每个对象去执行自己的方法,问题得到解决。

在面向对象编程之前,面向的是过程,如C语言。面向过程注重过程的。当解决一个问题的时候,面向过程会把事情拆分成: 一个个函数和数据(用于方法的参数) 。然后按照一定的顺序,执行完这些方法(每个方法看作一个个过程),等方法执行完了,事情就搞定了。