import java.util.*;
public class NameList1 {
private List names = new ArrayList();
public synchronized void add(String name) {
names.add(name);
}
public synchronized void printAll() {
for (int i = 0; i < names.size(); i++) {
System.out.print(names.get(i) + " ");
}
}
public static void main(String[] args) {
final NameList1 sl = new NameList1();
for (int i = 0; i < 2; i++) {
new Thread() {
public void run() {
sl.add("A");
sl.add("B");
sl.add("C");
sl.printAll();
}
}.start();
}
}
}
/*
Which two statements are true if this class is compiled and run?
(Choose two.)
A. An exception may be thrown at runtime.
B. The code may run with no output, without exiting.
C. The code may run with no output, exiting normally.
D. The code may rum with output ?A B A B C C ?, then exit.
E. The code may rum with output ?A B C A B C A B C ?, then exit.
F. The code may ruin with output ?A A A B C A B C C ?, then exit.
G. The code may ruin with output ?A B C A A B C A B C ?, then exit.
Answer: EG
*/
A, B, C e D, blz... erradas mesmo... mas por que não a F??
Se alguma alma piedosa puder esclarecer vou ficar muito contente!!
[]'s!
