Can someone please read this and tell me what they think. I think that these two sentences contradict each other, and if this is the general consensus then i am pissed off at this book.

The question:

Which of the following statements are true?

(a) No two threads can ever simultaneousy execute synchronized methods on the same Object.

(b) Methods declared synchronized should not be recursive, since the Objects monitor will not allow simultaneous invocations of the method.

(c) synchronized methods can only call other synchronized methods directly.

(d) Inside a synchronized method one can assume that no other
threads are currently excuting a method in the same class.

The answer is a. but this is incorrect in my opinion. This is the explination that the book gives and it seems to contradict itself.

"No two threads can ever simultaneousy execute synchronized methods on the same Object. This does not prevent one thread from executing a non-synchronized method while another thread executes a synchronized method on the same object."