一: 相同点

1、两者都是接口

2、通过Thread.start()开启线程后执行

3、两者可以通过线程池进行执行

二: 不同点

1、call方法可以抛出异常(throws),有返回值,run不能够抛出异常,并且没有返回值