类和对象

定义类

  1. class Car:
  2. pass

创建对象

  1. car = Car()

类的成员

  • 成员变量

    • 实例变量
    • 类变量
  • 构造方法
  • 成员方法

    • 实例方法
    • 类方法
  • 属性(property)

实例变量

  1. class Dog:
  2. def __init__(self,name,age): # 构造方法
  3. self.name = name
  4. self.age = age
  5. dog = Dog('小猪'18)

构造方法

__init__

实例方法

  1. class Dog:
  2. def run(self): # self指向实例本身
  3. print("{}在跑。".format(self.name))

类变量

直接在类中定义的变量。

类方法

  1. class Account:
  2. rate = 0.02
  3. @classmethod
  4. def interest(cls):
  5. return cls.rate

封装性

  • 私有变量
    内部数据,外部不可见,无法访问。在属性前使用双下划线__
  1. class Acount:
  2. __rate = 0.02
  • 私有方法

同私有变量。

使用属性

  1. class Dog:
  2. def __init__(self,name):
  3. self.__name = name
  4. @property
  5. def age(self):
  6. return self.__name
  7. @age.setter
  8. def age(self,age):
  9. self.__name = age

继承性

  1. class Animal:
  2. def __init__(self,name):
  3. self.__name = name
  4. class Dog(Animal):
  5. def __init__(self,name,age)
  6. super().__init__(name)
  7. self.age = age
  8. # 多继承性
  9. # 一个子类可以有多个父类
  10. # 若多个父类中属性或方法存在冲突,左优先
  11. #
  12. # 方法重写

多态性

子类继承父类并重写父类的方法。

类型测试与多态