Machine-translated by Google. Questions are authored in English.
Top

Discussion

Which of these correctly declares a task that both returns a value and may throw a checked exception?

  • A.Callable c = () -> parse();
  • B.Supplier<Integer> s = () -> { return parse(); };
  • C.Callable<Integer> c = () -> { return parse(); };
  • D.Runnable r = () -> { return parse(); };

Answer: C

Only Callable's method is declared to throw Exception, so a lambda body that calls something with a checked exception fits it and nothing else here. A Runnable returns void, a raw Callable loses the type, and Supplier declares no exception.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.