类
第二节课,主要还是讲类和对象。
1.在类外
获取类属性
- 类名.类属性
- 不能使用类名来访问实例属性
- 可以使用对象.类属性
创建类属性
- 类名.属性名 = 值
- 不可以使用对象.属性名 = 值 来创建类属性
使用类名调用类方法
- 可以使用类名.类方法(参数)
- 类本身传给cls
2.在类里
获取类属性
- self.类属性名
- 如果实例属性名与类属性名同名,那么获取的是实例属性
创建类属性
- 类名.属性名 = 值
- 不可以使用对象.属性名 = 值 来创建类属性
继承
- 在定义一个类时,在括号中添加父类名
- 自动获取父类的属性(实例属性/类属性)和方法(实例方法/类方法/静态方法)
- 私有属性和方法除外
- 把Dog称为子类(派生类),把Animal称为父类(基类)
- 子类可以重写/覆盖父类中一些自己不需要或者不同的方法
(定义与父类同名的方法,就会将父类中的方法覆盖) - 如果父类中的方法,不完全满足我们的要求,我们需要添加其他逻辑,那么可以对父类进行拓展
总结
- 静态方法的作用其实就是把类外面的一个函数拿到类里面来用,为了美观和封装性好才写到类里来
- 类方法目的是为了获取、增、删、改类属性的
- 为什么要创建静态方法? a.为了更好的进行封装 b.为了美观