0
点赞
收藏
分享

微信扫一扫

Python类的定义_类和对象的关系_对象的内存模型


类的定义_类和对象的关系_对象的内存模型

1 类的定义

Python类的定义_类和对象的关系_对象的内存模型_开发语言

类可以看做是一个模版,或者图纸,系统根据类的定义来造出对象。我们要造一个汽车,怎么样造?类就是这个图纸,规定了汽车的详细信息,然后根据图纸将汽车造出来。

类:我们叫做class。 对象:我们叫做object,instance(实例)。以后我们说某个类的对象,某个类的实例。是一样的意思。

我们把对象比作一个“饼干”,类就是制造这个饼干的“模具”。

Python类的定义_类和对象的关系_对象的内存模型_开发语言_02

Python类的定义_类和对象的关系_对象的内存模型_数据_03

2 属性和方法

我们通过类定义数据类型的属性(数据)和方法(行为),也就是说,“类将行为和状态打包在一起”。

Python类的定义_类和对象的关系_对象的内存模型_python_04

Python类的定义_类和对象的关系_对象的内存模型_python_05

对象是类的具体实体,一般称为“类的实例”。类看做“饼干模具”,对象就是根据这个“模具”制造出的“饼干”。

从一个类创建对象时,每个对象会共享这个类的行为(类中定义的方法),但会有自己的属性值(不共享状态)。更具体一点:“方法代码是共享的,属性数据不共享”。

Python类的定义_类和对象的关系_对象的内存模型_开发语言_06

❤️Python中,“一切皆对象”。类也称为“类对象”,类的实例也称为“实例对象”。

定义类的语法格式如下:

class 类名:
    类体

要点如下:

  1. 类名必须符合“标识符”的规则;一般规定,首字母大写,多个单词使用“驼峰原则”。
  2. 类体中我们可以定义属性和方法
  3. 属性用来描述数据,方法(即函数)用来描述这些数据相关的操作

【操作】一个典型的类的定义

class Student:
  def __init__(self,name,score): #构造方法第一个参数必须为self
    self.name = name     #实例属性
    self.score = score

  def say_score(self):      #实例方法
    print("{0}的分数是{1}".format(self.name,self.score))

s1 = Student('张三',80) #s1是实例对象,自动调用__init__()方法
s1.say_score()

pass为空语句。就是表示什么都不做,只是作为一个占位符存在。当你写代码时,遇到暂时不知道往方法或者类中加入什么时,可以先用pass占位,后期再补上。

Python类的定义_类和对象的关系_对象的内存模型_开发语言_07

3 对象完整内存结构

类是抽象的,也称之为“对象的模板”。我们需要通过类这个模板,创建类的实例对象,然后才能使用类定义的功能。

我们前面说过一个Python对象包含三个部分:id(identity识别码)、type(对象类型)、value(对象的值)。

现在,我们可以更进一步的说,一个Python对象包含如下部分:

Python类的定义_类和对象的关系_对象的内存模型_开发语言_08


举报

相关推荐

0 条评论