如题所述
javaæ¯é¢å对象è¯è¨ï¼ä¸åæåé½ä¼å°è£
å¨ä¸ä¸ªç±»ä¸ï¼å®ä¹æprivateæ¯ä¸ºäºæ´å¥½å°éèï¼å¯¹å¤æ´é²çæ¯setterågetteræ¹æ³ï¼æ以å¯ä»¥éè¿setter设置å¼ï¼getteræ¥åå¼ï¼è¾¾å°æ¨¡åéèçç®çã
温馨提示:答案为网友推荐,仅供参考
第1个回答 2016-06-22
publicclassThreadPlusAndMinus{privateintcount;privateintisRun;publicstaticvoidmain(String[]args){ThreadPlusAndMinustpm=newThreadPlusAndMinus();Threadt1=newThread(tpm.newMyThread(true));Threadt2=newThread(tpm.newMyThread(true));Threadt3=newThread(tpm.newMyThread(false));Threadt4=newThread(tpm.newMyThread(false));t1.start();t2.start();t3.start();t4.start();}privateclassMyThreadimplementsRunnable{privatebooleanisPlus;publicMyThread(booleanisPlus){this.isPlus=isPlus;}@Overridepublicvoidrun(){while(isRun++<100){if(isPlus){count++;}else{count--;}try{Thread.sleep(10);}catch(InterruptedExceptionex){Logger.getLogger(ThreadPlusAndMinus.class.getName()).log(Level.SEVERE,null,ex);}System.out.println(Thread.currentThread().getName()+":"+count);}}}}run方法不能加synchronized,加了就等于是单线程了。所以线程1必须等线程0完了才运行,另外每个线程预算完毕,释放cpu,让其他线程进来