Spec-Zone.ru › OpenJDK 17

Класс ObjectMethods

java.lang.Object
java.lang.runtime.ObjectMethods
public class ObjectMethods extends Object
Методы-загрузчики для реализаций методов ядра, управляемых состоянием, включая Object.equals(Object), Object.hashCode() и Object.toString(). Эти методы могут быть использованы, например, реализациями компилятора Java для реализации тел методов Object для классов записей.
Since:
16

Краткое описание методов

Модификатор и тип Метод Описание
static Object bootstrap(MethodHandles.Lookup lookup, String methodName, TypeDescriptor type, Class<?> recordClass, String names, MethodHandle... getters)
Метод-загрузчик для генерации методов Object.equals(Object), Object.hashCode() и Object.toString() на основе описания имён компонентов и методов доступа для сайтов вызовов invokedynamic или записей динамического пула констант.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание методов

bootstrap

public static Object bootstrap(MethodHandles.Lookup lookup, String methodName, TypeDescriptor type, Class<?> recordClass, String names, MethodHandle... getters) throws Throwable
Метод-загрузчик для генерации методов Object.equals(Object), Object.hashCode() и Object.toString() на основе описания имён компонентов и методов доступа для сайтов вызовов invokedynamic или записей динамического пула констант. Подробнее о семантике сгенерированных методов см. в спецификации Record.equals(Object), Record.hashCode() и Record.toString().
Параметры:
lookup - Каждый метод загрузки должен иметь lookup, который обычно представляет контекст поиска с привилегиями доступа вызывающего объекта. Это связано с тем, что сайты вызовов invokedynamic всегда предоставляют lookup соответствующему методу загрузки, но этот метод просто игнорирует параметр lookup
methodName - имя генерируемого метода, которое должно быть одним из "equals", "hashCode", или "toString"
type - MethodType, соответствующий типу описания для метода, который должен соответствовать описанию соответствующего метода Object, если связывается сайт вызова invokedynamic, или константа MethodHandle.class, если связывается динамическая константа
recordClass - класс записи, содержащий компоненты записи
names - список имён компонентов, соединённых в строку, разделённые ";", или пустая строка, если компонентов нет. Может быть null, если methodName является "equals" или "hashCode".
getters - обработчики методов для методов доступа к компонентам
Возвращает:
сайт вызова, если вызов осуществляется через indy, или обработчик метода, если вызов осуществляется через condy
Исключение:
IllegalArgumentException - если аргументы загрузки неверны или противоречивы
Throwable - если при построении сайта вызова возникает какое-либо исключение

© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/runtime/ObjectMethods.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API