Как узнать все методы пакета? С помощью Reflections понял, как получить методы класса, но как получить все методы пакета?
Рефлексия - это механизм, с помощью которого можно на этапе выполнения работать с классами и объектами, неизвестными на этапе компиляции. Если Вам надо искать пакеты и их содержимое, обратитесь не к рефлексии , а к пакету IO, ведь пакет по сути - не что иное, как обычная папка. Берите относительный путь, пробуйте докопаться до нужного пакета, хранящего классы, получайте их список, формируйте имена, а потом по имени класса рефлексией получайте методы каждого из них. А искать методы пакета... Ну таких просто не бывает, методы бывают только в классе. А вообще задача ваша изначально странная.
1) Найти все классы данного пакета, например так (не проверял, но должно выдавать, то что вам надо)
Reflections reflections = new Reflections(ClasspathHelper
.forPackage("my.package.prefix"), new SubTypesScanner());
Set<Class<?>> subTypes = reflections.getSubTypesOf(Object.class);
2) Получить все методы от всех классов (но это вы уже вроде знаете):
Set<Method> result = new HashSet<>();
for(Class cls: subTypes) {
result.addAll(Arrays.asList(cls.getDeclaredMethods()));
result.addAll(Arrays.asList(cls.getMethods()));
// важно использовать обе метода, так как getMethods возвращает
// только публичные методы, включая унаследованные, а getDeclaredMethods
// возвращает и приватные, протектед методы, но не унаследованные
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Пытаюсь записать в двухмерный массив 3 параметраКомпилятор пишет, что
Добрый день! Изучаю парсерыСтолкнулся с проблемой, что при:
Пытаюсь создать движение персонажа, в юнити есть стандартный персонаж который движется благодаря анимаций, но у меня персонаж в анимаций...