Найти в Дзене
DEBAGanov

Java 530. Каков другой синтаксис ссылок на методы Java 8?

В Java 8 был представлен еще один синтаксис ссылок на методы, который называется "ссылки на методы экземпляра". Он позволяет ссылаться на методы конкретного объекта, а не только на статические методы класса.

Ссылки на методы экземпляра выглядят следующим образом:

receiver::methodName

где receiver - это объект, на котором вызывается метод, а methodName - имя метода.

Например, если у нас есть класс Person с методом getName(), мы можем использовать ссылку на метод этого метода для создания экземпляра функционального интерфейса Supplier, как показано ниже:

Person person = new Person("Alice");
Supplier<String> s = person::getName;
String name = s.get(); // name = "Alice"

Здесь мы создаем объект person класса Person и передаем его в ссылку на метод getName() для создания поставщика s. Мы вызываем метод get() на поставщике s, чтобы получить имя объекта person.

Таким образом, ссылки на методы экземпляра позволяют более эффективно работать с методами объектов в Java и сократить объем кода при работе с функциональными конструкциями.

1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions

Tелеграмм канал: https://t.me/DEBAGanov

Мое резюме: https://github.com/DEBAGanov