Интерфейс RemoteRef
- Все суперинтерфейсы:
Externalizable, Serializable
- Все известные подинтерфейсы:
ServerRef
public interface RemoteRef extends Externalizable
RemoteRef представляет дескриптор удалённого объекта. RemoteStub использует удалённую ссылку для выполнения удалённого вызова метода у удалённого объекта.- Начиная с версии:
- 1.1
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final String |
packagePrefix |
Инициализирует префикс пакета сервера: предполагается, что реализации классов ссылок сервера (например, UnicastRef, UnicastServerRef) находятся в пакете, заданном этим префиксом. |
static final long |
serialVersionUID |
Устарело. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
done |
Устарело. Заглушки в стиле 1.2 больше не используют этот метод. |
String |
getRefClass |
Возвращает имя класса типа ссылки, который будет сериализован в поток 'out'. |
Object |
invoke |
Вызывает метод. |
void |
invoke |
Устарело. Заглушки в стиле 1.2 больше не используют этот метод. |
RemoteCall |
newCall |
Устарело. Заглушки в стиле 1.2 больше не используют этот метод. |
boolean |
remoteEquals |
Сравнивает два удалённых объекта на равенство. |
int |
remoteHashCode() |
Возвращает хеш-код удалённого объекта. |
String |
remoteToString() |
Возвращает строку, представляющую ссылку на этот удалённый объект. |
Методы, объявленные в интерфейсе Externalizable
readExternal, writeExternal | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
readExternal |
Объект реализует метод readExternal для восстановления своего содержимого, вызывая методы DataInput для примитивных типов и readObject для объектов, строк и массивов. |
void |
writeExternal |
Объект реализует метод writeExternal для сохранения своего содержимого, вызывая методы DataOutput для примитивных значений или метод writeObject интерфейса ObjectOutput для объектов, строк и массивов. |
Подробное описание полей
serialVersionUID
@Deprecated static final long serialVersionUID
Устарело.
Поле
serialVersionUID в интерфейсе не имеет эффекта. Не используйте; замены нет.указывает на совместимость с версией класса JDK 1.1.x.
- См. также:
packagePrefix
static final String packagePrefix
Инициализирует префикс пакета сервера: предполагается, что реализации классов ссылок сервера (например, UnicastRef, UnicastServerRef) находятся в пакете, заданном этим префиксом.
- См. также:
Подробное описание методов
invoke
Object invoke(Remote obj, Method method, Object[] params, long opnum) throws Exception
Вызывает метод. Такая форма делегирования вызова метода ссылке позволяет ссылке установить соединение с удалённым узлом, выполнить маршалинг представления метода и параметров, а затем передать вызов метода удалённому узлу. Этот метод либо возвращает результат вызова метода удалённого объекта, расположенного на удалённом узле, либо выбрасывает RemoteException, если вызов завершился неудачно, или исключение уровня приложения, если при удалённом вызове возникло исключение.
- Параметры:
-
obj— объект, содержащий RemoteRef (например, RemoteStub для объекта). -
method— вызываемый метод -
params— список параметров -
opnum— хеш-код, который может использоваться для представления метода - Возвращает:
- результат удалённого вызова метода
- Выбрасывает:
-
Exception— если при удалённом вызове метода возникает исключение - Начиная с версии:
- 1.2
newCall
@Deprecated RemoteCall newCall(RemoteObject obj, Operation[] op, int opnum, long hash) throws RemoteException
Устарело.
Заглушки в стиле 1.2 больше не используют этот метод. Вместо последовательности вызовов методов удалённой ссылки заглушки (
newCall, invoke и done) заглушка использует один метод invoke(Remote, Method, Object[],
int) удалённой ссылки для выполнения маршалинга параметров, удалённого вызова метода и демаршалинга возвращаемого значения.Создаёт подходящий объект вызова для нового удалённого вызова метода у этого объекта. Передача массива операций и индекса позволяет генератору заглушек назначать индексы операций и интерпретировать их. Удалённой ссылке может потребоваться операция для кодирования вызова.
- Параметры:
-
obj— удалённая заглушка, через которую выполняется вызов -
op— массив операций заглушки -
opnum— номер операции -
hash— хеш интерфейса заглушки/скелета - Возвращает:
- объект вызова, представляющий удалённый вызов
- Выбрасывает:
-
RemoteException— если не удалось начать новый удалённый вызов - Начиная с версии:
- 1.1
- См. также:
invoke
@Deprecated void invoke(RemoteCall call) throws Exception
Устарело.
Заглушки в стиле 1.2 больше не используют этот метод. Вместо последовательности вызовов методов удалённой ссылки (
newCall, invoke и done) заглушка использует один метод invoke(Remote, Method, Object[],
int) удалённой ссылки для выполнения маршалинга параметров, удалённого вызова метода и демаршалинга возвращаемого значения.Выполняет удалённый вызов. Invoke выбрасывает любые исключения «пользователя», которые должны передаваться дальше, а не перехватываться заглушкой. Если во время удалённого вызова возникает исключение, invoke должен закрыть соединение до того, как будет выброшено исключение «пользователя» или удалённое исключение.
- Параметры:
-
call— объект, представляющий удалённый вызов - Выбрасывает:
-
Exception— если во время удалённого вызова метода возникает исключение - Начиная с версии:
- 1.1
- См. также:
done
@Deprecated void done(RemoteCall call) throws RemoteException
Устарело.
Заглушки в стиле 1.2 больше не используют этот метод. Вместо последовательности вызовов методов удалённой ссылки (
newCall, invoke и done) заглушка использует один метод invoke(Remote, Method, Object[],
int) удалённой ссылки для выполнения маршалинга параметров, удалённого вызова метода и демаршалинга возвращаемого значения.Позволяет удалённой ссылке освободить или повторно использовать соединение. Метод Done следует вызывать только в том случае, если invoke успешно (без исключений) вернулся в заглушку.
- Параметры:
-
call— объект, представляющий удалённый вызов - Выбрасывает:
-
RemoteException— если при очистке вызова возникает удалённая ошибка - Начиная с версии:
- 1.1
- См. также:
getRefClass
String getRefClass(ObjectOutput out)
Возвращает имя класса типа ссылки, который будет сериализован в поток 'out'.
- Параметры:
-
out— выходной поток, в который будет сериализована ссылка - Возвращает:
- имя класса (без указания пакета) типа ссылки
- Начиная с версии:
- 1.1
remoteHashCode
int remoteHashCode()
Возвращает хеш-код удалённого объекта. Две заглушки удалённых объектов, ссылающиеся на один и тот же удалённый объект, будут иметь одинаковый хеш-код (для поддержки использования удалённых объектов в качестве ключей в хеш-таблицах).
- Возвращает:
- хеш-код удалённого объекта
- Начиная с версии:
- 1.1
- См. также:
remoteEquals
boolean remoteEquals(RemoteRef obj)
Сравнивает два удалённых объекта на равенство. Возвращает логическое значение, указывающее, эквивалентен ли этот удалённый объект указанному объекту. Этот метод используется, когда удалённый объект хранится в хеш-таблице.
- Параметры:
-
obj— объект для сравнения - Возвращает:
- true, если эти объекты равны; в противном случае false.
- Начиная с версии:
- 1.1
- См. также:
remoteToString
String remoteToString()
Возвращает строку, представляющую ссылку на этот удалённый объект.
- Возвращает:
- строка, представляющая ссылку на удалённый объект
- Начиная с версии:
- 1.1
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
serialVersionUIDв интерфейсе не имеет эффекта.