zoukankan      html  css  js  c++  java
  • Python基础06-类与对象

    面向过程和面向对象

    面向过和面向对象是两种编程风格。

    • 面向过程:即怎么去实现。主要虑功能的实现步骤和过程,多使用函数相互组合调用实现。
    • 面向对象:即谁去实现,怎么配合。主要考虑动作的主体和相互关系,使用类的继承或组合实现。

    以下是将大象放进冰箱,面向过程和面向对象的不同操作思路。

    graph LR subgraph 面向对象-按主体归类 D([冰箱])-->D1[开门] D-->D2[关门] E([大象])-->E1[进入冰箱] end subgraph 面向对象-使用对象操作 F([冰箱.开门]) --> G([大象.进入冰箱]) -->H([冰箱.关门]) end subgraph P[面向过程] A[打开冰箱门]-->B[把大象放进去] --> C[关上冰箱门] end

    面向对象将不同的操作按主体进行分组,然后指挥不同的对象组合完成不同的操作

    类与实例

    和函数声明和函数调用一样,面向对象也分为定义和使用两部分。
    通常我们使用一种抽象的泛指概念来描述一类事物,如人类,动物,猫,冰箱等等,这种问称之为类。
    而符合该类的某一个具体的事物,如张三、一只名为泡芙的猫、我家的西门子冰箱等等,这种称为实例,即一个具体的对象。
    张三是人类的实例,泡芙是猫的实例,我家的西门子冰箱是冰箱的实例。

    面向对象,一般的使用方法为:

    1. 定义类,描述对象属性和对象操作
    2. 调用类创建出一个具体的实例,使用这个实例调用其具体操作

    以猫类和泡芙为例,实现代码如下。

    class Cat:   # 定义类,使用class关键字
        def talk(self):   # self指具体具体的每一个实例对象,这也被称为实例绑定方法,即实例方法
            print('miao u~')
    
    paofu = Cat()   # 创建实例
    paofu.talk()   # 调用实例方法
    

    初始化时传入参数

    对象属性和对象方法

    类属性和类方法

    静态方法

    面向对象的3大特征

    • 封装
    • 继承
    • 多态

    设计类

    创建并使用实例

  • 相关阅读:
    【leetcode】1365. How Many Numbers Are Smaller Than the Current Number
    【leetcode】1363. Largest Multiple of Three
    【leetcode】1362. Closest Divisors
    【leetcode】1361. Validate Binary Tree Nodes
    【leetcode】1360. Number of Days Between Two Dates
    【leetcode】1359. Count All Valid Pickup and Delivery Options
    【leetcode】1357. Apply Discount Every n Orders
    【leetcode】1356. Sort Integers by The Number of 1 Bits
    ISE应用入门的一些问题
    DDR的型号问题
  • 原文地址:https://www.cnblogs.com/superhin/p/14014088.html
Copyright © 2011-2022 走看看