Объявите интерфейс Function, который будет содержать метод evaluate, который получает параметр типа int и возвращает значение типа int. Создайте класс Half, который реализует Function. Реализуйте метод evaluate(), так чтобы он возвращал значение, полученное делением своего параметра типа int на 2.
В клиенте создайте метод, который получает произвольный массив значений типа int и возвращает массив такой же длины, но значения элементов в новом массиве составляют только половину по сравнению со значениями элементов в массиве, переданном как параметр. В реализации метода создайте экземпляр типа Half и используйте его для вычисления значений возвращаемого массива.
Перепишите метод, который оперирует массивами из предыдущего задания: в методе следует использовать ссылку типа Function как аргумент и использовать this вместо создания экземпляра Half.
Создайте класс Print, который реализует Function и содержит метод, который просто выводит целое значение, переданное как аргумент, а также возвращает это значение.
Теперь напишите программу, которая создает массив целых значений от 1 до 10 и делает следующее.
Print и метода, описанного ранее.
Half и Print, а также метод, описанный выше.
| Объектно-ориентированное программирование | Урок 7. Вложенные классы и интерфейсы |