Для следующего класса, какова правильная реализация интерфейса Callable?Теория экзаменов Java Core
class Process implements Callable<List<Set<String>>>{ }
A. public Future< List<Set<String>>> call() throws Exception
B. public void call(List<Set<String>> data) throws RuntimeException
C. public List<Set<String>> call(String data) throws RuntimeException
D. public List<Set<String>> call() throws Exception
Я реализовал это в Eclipse, и ответ D. То, что я хочу знать, как бы я знать, будет ли класс выбросить исключение или RuntimeException? Есть ли способ дифференцировать? Я знаю, что исключение Runtime является исключенным исключением и что исключение проверено, но есть ли намек на вопрос, чтобы сказать мне, что это класс исключений? Если бы я не реализовал это в Eclipse, я бы не знал, что метод вызова не принимает параметр String, поэтому он будет либо C, либо D. Как я должен знать, что ответ был выбраковкой Exception?
Но без доступа к документации я бы не знал, что метод вызова вызывает исключение. Есть ли какие-либо подсказки внутри вопроса или это просто до того, есть ли у вас опыт работы с интерфейсом? –
Я думаю, что это вопрос знания интерфейса. Без этого вы не могли бы знать, какие аргументы вызывают() и что он возвращает. Obvoiusly, вы можете исключить A в самом начале, из-за типа возврата - по интуиции, такой тип не задается нигде в вопросе, поэтому наиболее вероятно (но не уверен, если не зная интерфейс), что он неверен. – rasmeta
Это отличный друг, приветствия. –