面试题多态结合线程
面试题
第一题:多态结合线程
1.问thread.start();和thread.show();哪个可以执行
Thread thread = new Thread(){@Overridepublic void run() {System.out.println("这是线程的任务...");}public void show() {System.out.println("show run....");}};thread.start();thread.show();}
答:
一,Thread thread = new Thread(){}
中new Thread(){}是继承了Thread的匿名内部类,
二,Thread thread = new Thread(){}
意思是父类引用指向子类匿名对象。
三,所以这里考察了多态,run()是子父类共有方法,show()是 子类特有成员方法。thread 可以调用子父类共有方法run(),不能调用show()方法。