Python札记27_类和实例

作者: 皮皮大 | 来源:发表于2019-07-03 00:04 被阅读0次

    类、属性、方法、实例是我第一遍看书的过程中非常懵圈的知识点,不得不承认:类是编程中的重中之重,在Python中也不例外。所以在接下来的几篇札记中将会重点介绍这几个概念和知识,是笔者的一丝拙见,如有不妥之处,恳请大佬们指出。

    • 面向对象
    • 实例
    • 属性

    术语

    在解释面向对象之前,先了解几个术语:

    • 问题空间:问题解决者对一个问题所达到的全部认识状态,由问题解决者利用问题所包含的信息和已贮存的信息主动构成的。

    • 问题构成的三要素构成了问题空间

      • 初始状态
      • 目标状态
      • 操作
    • 对象:Object,既表示客观世界问题空间的某个具体的事务,也表示系统软件中的基本元素。Python中一切皆是对象:字符串、函数、模块或者类都是对象。OOP大师Grandy Booch关于对象的几大要素解释:

      • 对象:一个对象有自己的状态、行为和唯一标识符
      • 状态(State):包含对象已有的属性和对象具有的当前属性值,这些属性往往是动态的。
      • 行为(Behavior):表示一个对象如何影响外界和被外界影响,表现为对象自身状态的改变和信息的传递。
      • 标识(Identity):一个对象所有的区别于其他对象的属性,通常是指在内存中的所创建的对象的地址

    总结:对象具有方法(上面的行为)和属性(上面的状态)和标识任何一个对象都有属性(是什么)和方法(能做什么)


    面向对象

    面向对象也是面向对象程序设计(Object Oriented Programming),它是一种程序设计范型,同时也是一种程序开发的方法。对象指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用型、灵活性和可扩展型。OOP = 对象 + 类 + 继承 + 多态 + 消息,其中核心概念是对象
    面向对象程序设计

    类class

    在面向对象程序设计中,类是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建对象的属性和方法。类是某种特定的元数据所组成的内聚的包.......(巴拉巴拉小魔仙,变身!)

    • 类描述了对象的行为规范,对象称之为类的实例
    • 类有接口和结构。
      • 接口描述通过方法与类及其实例进行操作
      • 结构描述一个实例中的数据如何划分为多个属性
    • 面向对象程序设计的三大特性
      • 封装性
      • 继承性
      • 多态性

    编写类
    类是某一群具有相同属性和方法的对象的集合。下面引用齐伟老师书中一个例子来说明:

    # 定义一个 美女的类
    class 美女:
        胸围 = 80
        腰围 = 55
        臀围 = 85
        皮肤 = white     # 没有括号的都是属性
        唱歌()     # 加上括号的都是方法 
        做饭()
    
    • 定义一个美女类,关键字class开头,后面是类名字
    • 没有括号的是属性,有括号的是方法
    • 来一个具体的美女:周美女 = 美女(),就是周美女就是一个实例。
    • 实例拥有类的所有属性和方法,可以进行一些增查改的操作:
      • 查属性:a = 周美女.胸围,a就是80
      • 改属性值:周美女.皮肤 = black
      • 增加属性:周美女.头发 = yellow
    • 访问某个方法:周美女.做饭()

    总结

    • 类:拥有属性和方法某类群体的集合
    • 实例:类的具体化,实例化
    • 属性:不带括号
    • 方法:带括号

    相关文章

      网友评论

        本文标题:Python札记27_类和实例

        本文链接:https://www.haomeiwen.com/subject/hqdxhctx.html