Skip to main content

What is the difference between Callable and Runnable?

Junior Java
Quick Answer Runnable: run() method, no return value, can't throw checked exceptions. Callable: call() method, returns a value (Future), can throw checked exceptions. Use Callable when you need the result of an async computation. Submit to ExecutorService: Future future = executor.submit(callable); result = future.get() (blocks until done).

Answer

Runnable: No return value; no checked exceptions.
Callable: Returns value and may throw exceptions.
Used with ExecutorService to get Future results.
S
SugharaIQ Editorial Team Verified Answer

This answer has been peer-reviewed by industry experts holding senior engineering roles to ensure technical accuracy and relevance for modern interview standards.

Want to bookmark, take notes, or join discussions?

Sign in to access all features and personalize your learning experience.

Sign In Create Account

Source: SugharaIQ

Ready to level up? Start Practice