Разница между интерфейсами Runnable и Callable в Java

Когда вы создаете привязки, вы устанавливаете Source свойства вашего объекта, а не самого объекта. Вы должны указать имя свойства в конструкторе Binding, а затем установить источник в свой объект:

    b1 = new Binding("DeviceConfigured");
    b2 = new Binding("ProcessingData");
    b1.Source = myADS;
    b2.Source = myADS;
461
задан Mike B. 19 September 2018 в 11:33
поделиться

2 ответа

Посмотрите объяснение здесь .

интерфейс Callable подобен Выполнимому, в том оба разработаны для классов, экземпляры которых потенциально выполняются другим потоком. Выполнимый А, однако, не возвращает результат и не может бросить контролируемую исключительную ситуацию.

416
ответ дан Stephen C 19 September 2018 в 11:33
поделиться
  • 1
    +1, но я думаю, что это только полезно, если myView представляет корневое представление контроллера представления. Что, если это doesn' t, хотя и вместо этого myView является подпредставлением как {100,100,200,200}? – memmons 22 March 2013 в 16:57

Я нашел это в другом блоге, который может объяснить Это немного больше этих различий :

, хотя оба интерфейса реализуются классами, которые хотят выполнить в другом потоке выполнения, но между двумя интерфейсом есть несколько различий:

  • A Callable экземпляр возвращает результат типа v , тогда как A Punnable не имеет значения.
  • Экземпляр Callable может бросать проверкуемых исключений, тогда как Runnable экземпляр не может

. Дизайнеры Java почувствовали необходимость расширения возможностей Интерфейс Runnable , но они не хотели повлиять на использование интерфейса интерфейса Runnable , и, вероятно, это причина, по которой они пошли на отдельный интерфейс с именем Callable В Java 1,5, чем изменение уже существующих Runnable .

36
ответ дан 22 November 2019 в 22:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: