Thread communication in Java is handled by wait(), notify(), and notifyAll() methods from the Object class. The sleep() method only pauses execution and is not used for inter-thread communication. Therefore option A is correct and option B (including sleep) is incorrect. The claimed answer A is correct.