Разработка функции на Java
Цель метода:
В качестве аргументов получаем объект Object и какое-то поле этого объекта Field.
В качестве вывода выводим на экран все методы в указанном пакете, возвращаемые значения которых можно присвоить данному полю.
Обязательно учитывать Generic, Wildcard и правило PECS!
Пример:
Поле задано как: <? extends Number>
В пакете packagename есть следующие методы:
Integer packagename.class1.m1
Number packagename.class2.m2
String packagename.class1.m3
ArrayList<Integer> packagename.class2.m4
<E> packagename.class1.m5
<E extends Integer> packagename.class2.m6
Так же рассмотреть ситуацию:
packagename.class3 <E>
<E> m7
packagename.class4 extends packagename.class3 <Integer>
ArrayList<> m8
Для такого набора методов в пакете на экран по результатам работы функции должно вывестись:
Field type - ? extends Number
Produce methods:
Integer packagename.class1.m1
Number packagename.class2.m2
<E extends Integer> packagename.class2.m6
<Integer> packagename.class4
Программа должна запуститься на IDEA 2020, Java 15. Можно использовать рефлексию.