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