常见面试题十四--如何实现多线程
在Java当中实现多线程通常有两种方法。
第一,创建一个类,继承Thread类,并复写run方法。需要启动一个新的线程时,首先创建该类的对象,然后调用start()方法,就可以使新线程进入就绪状态;
第二,创建一个类,实现Runnable接口,并实现该接口当中的run方法。需要启动一个新的线程时,首先创建一个该类的对象,调用Thread类的构造函数,将该对象作为构造函数的参数传递进去,然后再调用Thread对象的start()方法,就可以使新线程进入就绪状态。
对于这两种实现的方法,通常我会选择后者,原因有两点。
第一,在Java当中,继承只有一次机会,如果我的类继承了Thread,就不能再继承其他的类。而实现接口确没有这样的限制;
第二,使用Runnable接口,可以将线程和线程当中的功能代码分离开,这也符合面向对象的设计原则,能够使代码的灵活性和复用性更高。
常见面试题十四--如何实现多线程?
本文介绍了在Java中实现多线程的两种常见方法:通过继承Thread类和实现Runnable接口。对比这两种方法,推荐使用实现Runnable接口的方式,因为它不仅避免了单一继承的限制,还能更好地分离线程与业务逻辑,提高代码的复用性和灵活性。

被折叠的 条评论
为什么被折叠?



