面向对象 一 .面向对象和面向过程比较

    ①面向过程:一切以事物的发展流程为核心

           优点:负责的问题流程化,编写相对简单

         缺点:可扩展性差

    ②面向对象:一切以对象为中心. 一切皆为对象.

          具体的某一个事务就是对象

         优点:可扩展性强

         缺点:编程的复杂度高于面向过程

二.类和对象

    ①类:就是图纸,创建对象的第一步

        对象:通过类造出来的具体事物,

    ②基本格式

    class  类名:            #创建类    类名用驼峰格式

      def __init__(self,参数):         # self当前类的对象,参数一般作为属性

        self.属性 = 值

        self.属性 = 值  

      def 方法(self , 参数)                   #即函数

        方法体(函数体,return)

    变量 = 类名()       #创建对象

    变量.属性           #访问对象的属性信息

    变量.方法()      #访问类中的方法

python  ---16      初识面向对象_父类

python  ---16      初识面向对象_面向对象_02 

三.3大特征     ( 封装, 继承, 多态.)

  ①封装   

  1.对属性的封装  2.对方法和功能的封装 3.模块和包

python  ---16      初识面向对象_封装_03

  ②继承 :

    ⼦类可以⾃动拥有⽗类中除了私有属性外的其他所有内容.

          对父类进行扩展

      当出现xxx是一种yyy类型的东西. 可以使用继承关系

      父类的对象不能执行子类中的功能

      类中的方法的查询顺序. 先找自己, 然后再找父类

    1.基本格式

 python  ---16      初识面向对象_面向对象_04

    2.支持多继承

python  ---16      初识面向对象_封装_05

 

  ③多态

 

  同一个对象,多种形态

        (鸭子模型, 只要会嘎嘎叫就是好鸭子,有超强的可扩展性)

python  ---16      初识面向对象_类名_06