第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關(guān)于Java當(dāng)中繼承的疑問

關(guān)于Java當(dāng)中繼承的疑問

白衣染霜花 2019-01-19 06:21:03
這是我運行的Test.java文件的源碼,Sub類繼承的是Main類,MyThreadA和MyThreadB都是線程類 package service; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub Sub subRef = new Sub(); MyThreadA a = new MyThreadA(subRef); a.setName("A"); a.start(); MyThreadB b = new MyThreadB(subRef); b.setName("B"); b.start(); } } 如下是控制臺的運行結(jié)果,我的疑問是為什么Main類里面的serviceMethod()方法也被調(diào)用了?線程MyThreadA和線程MyThreadB的run()方法不是只是調(diào)用了Sub類里面的serviceMethod()方法嗎? int sub 下一步 sleep begin threadName=A time=1521894980829 int sub 下一步 sleep begin threadName=B time=1521894980829 int sub 下一步 sleep end threadName=A time=1521894985834 int sub 下一步 sleep end threadName=B time=1521894985834 int main 下一步 sleep begin threadName=A time=1521894985835 int main 下一步 sleep end threadName=A time=1521894990838 int main 下一步 sleep begin threadName=B time=1521894990838 int main 下一步 sleep end threadName=B time=1521894995840 如下是MyThreadA類 package service; public class MyThreadA extends Thread { private Sub sub; public MyThreadA(Sub sub) { super(); this.sub = sub; } @Override public void run() { // TODO Auto-generated method stub sub.serviceMethod(); } } 如下是MyThreadB類 package service; public class MyThreadB extends Thread { private Sub sub; public MyThreadB(Sub sub) { super(); this.sub = sub; } @Override public void run() { // TODO Auto-generated method stub sub.serviceMethod(); } } 如下是Main類 package service; public class Main { synchronized public void serviceMethod() { try { System.out.println("int main 下一步 sleep begin threadName=" + Thread.currentThread().getName() + " time=" + System.currentTimeMillis()); Thread.sleep(5000); System.out.println("int main 下一步 sleep end threadName=" + Thread.currentThread().getName() + " time=" + System.currentTimeMillis()); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } } 如下是Sub類,繼承Main類 package service; public class Sub extends Main { @Override public void serviceMethod() { try { System.out.println("int sub 下一步 sleep begin threadName=" + Thread.currentThread().getName() + " time=" + System.currentTimeMillis()); Thread.sleep(5000); System.out.println("int sub 下一步 sleep end threadName=" + Thread.currentThread().getName() + " time=" + System.currentTimeMillis()); super.serviceMethod(); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } }
查看完整描述

2 回答

?
海綿寶寶撒

TA貢獻(xiàn)1809條經(jīng)驗 獲得超8個贊

去掉super.serviceMethod();

查看完整回答
反對 回復(fù) 2019-03-01
?
慕標(biāo)琳琳

TA貢獻(xiàn)1830條經(jīng)驗 獲得超9個贊

基本概念都沒有搞清楚,就去學(xué)線程合適嗎?

查看完整回答
反對 回復(fù) 2019-03-01
  • 2 回答
  • 0 關(guān)注
  • 446 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號