Which three will compile and run without exception?()
A.private synchronized Object o;
B.void go(){ synchronized(){/* code here */}
C.public synchronized void go(){/* code here */}
D.private synchronized(this) void go(){/* code here */}
E.void go(){ synchronized(Object.class){/* code here */}
F.void go(){ Object o = new Object(); synchronized(o){/* code here */}