這篇文章給大家介紹Java sum傳遞該如何完成成員變量,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
專注于為中小企業(yè)提供成都網(wǎng)站制作、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)大城免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
Java sum傳遞需要我們不斷的學(xué)習(xí),當(dāng)然我們在學(xué)習(xí)中會有很多的問題需要我們解決。下面我們就詳細(xì)的來看看不能更好的啟動100個(gè)線程。每個(gè)線程給變量Java sum傳遞加1(sum初始值為0)。需要通過引用傳遞,將sum傳遞給線程。
為了能夠進(jìn)行引用傳遞,將sum作為一個(gè)類成員變量,并將該類的對象傳遞給線程。使用加鎖和不加鎖兩種方式實(shí)現(xiàn)加1操作,看看最終的執(zhí)行效果。
*/ public class Thread100Baidu { public static void main(String[] args) { int[] sum = new int[100]; MyThread[] mt = new MyThread[100]; for(int i=0;iJava sum傳遞編寫3個(gè)線程,一個(gè)線程給某個(gè)對象里的整型變量賦初值,第二個(gè)線程給初值加10,第三個(gè)線程給變量值清0,要求這3個(gè)線程嚴(yán)格按照賦初值、加10、清0順序執(zhí)行,使用多線程的共享與同步的方式實(shí)現(xiàn)。
public class ThreeThreadBaidu { public static void main(String[] args) { Myobject mo = new Myobject(0); FirstThread ft = new FirstThread(mo); ft.start(); SecondThread st = new SecondThread(mo); st.start(); ThirdThread tt = new ThirdThread(mo); tt.start(); } } class Myobject { int i; public Myobject(int i) { this.i = i; } } class FirstThread extends Thread { Myobject mo = null; public FirstThread(Myobject mo) { this.mo = mo; } public synchronized void run() { mo.i = 100; System.out.println(currentThread().getName()+ " 初始值 = " + mo.i); } } class SecondThread extends Thread { Myobject mo = null; public SecondThread(Myobject mo) { this.mo = mo; } public synchronized void run() { mo.i += 10 ; System.out.println(currentThread().getName()+ " 加10后 = " + mo.i); } } class ThirdThread extends Thread { Myobject mo = null; public ThirdThread(Myobject mo) { this.mo = mo; } public synchronized void run() { mo.i = 0 ; System.out.println(currentThread().getName()+ " 清0后 = " + mo.i); } }關(guān)于Java sum傳遞該如何完成成員變量就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。
分享名稱:Javasum傳遞該如何完成成員變量
文章分享:http://weahome.cn/article/jjjhcp.html