类必须先定义再使用

类的定义与函数定义是一样的, 都要遵循先定义再使用

s2 = Student()    # 此处无法使用类来创建对象


class Student:
    pass

可以在if语句中甚至函数中定义类

if True:
    class Student:
        pass


s1 = Student()
print(s1)

使用类的时候, 一定要保证类被已经被定义了.


类的主体

类主体中都可以定义什么?

在 python 中类可以定义:


1. 字段(field, 在国内很多人叫属性)

在 pytyon 中字段分 2 种:

  1. 实例变量(Instance Variables): 他存储的值是属于每一个对象的, 或者对不同的对象来说他们是独立. 就像人的私有财产

  2. 类变量(Class Variables): 他存储的值是属于类本身的, 而不是属于某一个具体的对象, 或者说他是被所有的对象所共有的. 就像公共财产


2. 方法

方法就是我们以前学习的函数, 只是同类扯上关系了而已!

在 python 中的方法分 3 种:

  1. 实例方法. 和实例变量一样, 他是属于对象的. 实例方法相比普通的函数有一个比较特殊的地方:第一个形参总是会自动传入这个实例(对象)

  2. 类方法 和类变量一样, 是属于类的. 类方法与实例方法的区别在于第一个参数: 类方法的第一个参数总是这个类本身.

  3. 静态方法 静态方法和实例没有任何关系. 它仅仅是定义在类中而已, 这个时候类就相当于这个方法的命名空间.


Copyright © 李振超 2018 all right reserved,powered by Gitbook
该文件最后修订时间: 2018-02-25 07:12:09

results matching ""

    No results matching ""