多項(xiàng)選擇題

public class TestFive { 
private int x; 
public void foo() { 
int current = x; 
x = current + 1; 
} 
public void go() { 
for(int i=0;i<5;i++) { 
new Thread() { 
public void run() { 
foo(); 
System.out.print(x + “, “); 
} }.start(); 
}}} 
Which two changes, taken together, would guarantee the output: 1, 2, 3, 4, 5, ?()

A. Move the line 12 print statement into the foo() method.
B. Change line 7 to public synchronized void go() {.
C. Change the variable declaration on line 3 to private volatile int x;.
D. Wrap the code inside the foo() method with a synchronized( this ) block.
E. Wrap the for loop code inside the go() method with a synchronized block synchronized(this) { // for loop code here }.

題目列表

你可能感興趣的試題

微信掃碼免費(fèi)搜題