Существует ли стандартная библиотека со стандартным интерфейсом ссылок? - PullRequest
2 голосов
/ 01 марта 2012

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

interface Reference<T> {
   void set(T t);
   T get();
}

Я быстро посмотрел и не видел ничего подобного в Google Guava.Кто-нибудь знает библиотеку, которая определяет этот интерфейс (вероятно, вместе с реализацией)?Я обеспокоен поиском интерфейса , как показано ниже, не является реализацией. AtomicReference является реализацией и не предоставляет интерфейс.

Также обратите внимание, что я не являюсьищу инструмент для генерации методов получения / установки для членов класса.Смысл в том, чтобы передать параметры метода по ссылке.

Причина, по которой я специально ищу интерфейс, заключается в том, что я хочу реализовать интерфейс в дополнительных классах, которые обеспечивают дополнительное поведение.Например, я мог бы создать PersistentReference, который расширяет Reference, добавив метод save().

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

Ответы [ 2 ]

1 голос
/ 02 марта 2012

Первая мысль: используйте интерфейс провайдера Guice и расширьте его под свои нужды.

0 голосов
/ 04 марта 2012

java.util.concurrent.Future<T> кажется самым близким.

...