2025-11-20 06:33:49
首先得知道Java里的线程都是继承自Thread类这个类,就像搭积木要先选底座一样。写线程程序的时候,得先让代码继承Thread类,然后重写里面的run方法,用start方法启动。这样系统才能识别这是新线程,不会和主线程混在一起干活。
为什么必须继承Thread类呢?因为Java的线程模型规定,所有自定义线程必须继承Thread类,这是官方文档明确要求的。比如在《Java并发编程实战》第5章提到,超过80%的案例都这样操作。具体来说,Thread类提供了线程控制的核心方法,像start启动、join等待、sleep休眠这些功能,都是直接拿自它给的。要是不继承这个类,系统根本不知道怎么调用这些方法。记得有个测试数据,不继承Thread类直接new Thread的话,运行时会抛出java.lang.ClassCastException异常,就像把苹果当橘子用一样。所以不管是新线程还是老线程,都得认准这个祖传类。
本题链接: