一、Mixins机制
Mixins机制是一种在面向对象编程中用于代码复用的灵活机制,通过将特定功能的代码块注入到类中,增强了类的功能,同时保持了类的层次结构的简洁性和灵活性。
案例:
定义一个交通工具类,民航飞机和直升飞机、汽车都属与交通工具,继承交通工具类。
但是汽车不会飞,将fly的方法从交通工具类中提出来,做一个新类。
民航飞机和直升飞机继承多个类,汽车只继承交通工具类
class Vehicle: # 交通工具 pass class FlyMinix(): def fly(self): ''' 飞行功能相应的代码 ''' print("I am flying") """ 1. 主类:就是大部分都是主要的功能 2. 辅类:就是一些辅助的功能 3. 辅类的类名也有讲究:一般以mixin、able、ible等结尾 4. 继承的位置也有讲究 """ class CivilAircraft(FlyMinix, Vehicle): # 民航飞机 pass class Helicopter(FlyMinix, Vehicle): # 直升飞机 pass class Car(Vehicle): # 汽车并不会飞,但按照上述继承关系,汽车也能飞了 pass
二、元类
1、什么是元类
产生类的类
2、查看元类type
class Vehicle: # 交通工具 pass class Car(Vehicle): # 汽车并不会飞,但按照上述继承关系,汽车也能飞了 pass qiche = Vehicle() print(type(qiche)) # <class '__main__.Vehicle'> print(type(Vehicle)) # <class 'type'>
3、产生类的两种方式
方式1:
class 类名(): pass
方式2:
由于所有类都是有type类造出来的,所以我们也可以使用type类造出来一个新类
type(object_or_name, bases, dict) # 这三个条件就是造出来类的三个要素. type("类名", "父类", "类的名称空间")
4、
标签:交通工具,Vehicle,Mixins,元类,pass,机制,type,class From: https://www.cnblogs.com/dgp-zjz/p/17514332.html