#java #javafx #время
Изучаю JavaFX. Столкнулся с оператором :: . Объясните, пожалуйста, что он значит. Пример: public static LocalDate parse(String dateString) { try { return DATE_FORMATTER.parse(dateString, LocalDate::from); } catch (DateTimeParseException e) { return null; } }
Ответы
Ответ 1
Это ссылка на метод, новая конструкция языка Java 8 Например: public static void main(String[] args) { Listlist = Arrays.asList("str1", "str2", "str3"); list.forEach(System.out::print); } Произойдет следующее: интерфейс List наследуется от Iterable, у которого есть метод forEach(Consumer action). Consumer - функциональный интерфейс, с одним методом accept(T t), который принимает один параметр. В данном случае, consumer - метод print класса System.out, который принимает строку. Функциональный интерфейс - интерфейс, который имеет только 1 абстрактный метод.
Комментариев нет:
Отправить комментарий