目标:通过继承 threading . Thread 类来自定义线程类(应用于多线程下载、爬虫等)

    你问我答:已经有现成的子线程类 threading.Thread 可创建子线程,为啥还要自定义线程类创建子线程呢?

    答:为了让每个线程的封装更加完美,所以使用 threading 模块时,需要自定义线程类,这样才会更加完美!!!

    一:通过继承 threading . Thread 类来自定义线程类的步骤

    1:class新建一个类,并且继承threading.Thread 父类
    2:重写父类threading.Thread 的 run()方法
    3:通过实例化对象(子线程)的 start()方法继承父类的start()方法启动这个自定义线程类

    注意事项:

    1:父类的start()方法只能调用一次
    2:子类在重写父类的init方法时,一定要先调用父类的init方法,即super().init继承父类的属性
    3:不管是什么问题,只要是子类继承了父类,那么在给子类实例化属性时,一定要继承父类的实例化属性,即super().init( )

    快速代码体验

    image.png

    注意事项代码演示:子类在重写父类的init方法时,一定要先调用父类的init方法,即super().init

    image.png