Я считаю что рефлексия опасная штука для продакшна в рантайме.
Сейчас поясню. Скажем у Вас есть сайт который загружает перед
запускам все его плагины из директории plugins который включен
в classpath, и читают из каждого jar файла Manifest
или другого какого нибудь файла xml, properties, yml etc
про имплементацию Plugin интерфейса и делает вот это:
Class cls = Class.forName("com.example.PluginImpl");
Plugin plugin = (Plugin) cls.newInstance();
plugin.run();
А теперь представьте что в папке plugins попался какой нибудь
jar злоумышленник, который может делать все:
- Создавать .class файлы и загружать их в jar файл
и поставить на папку plugins причем делая ее скрытой
Тут я думаю у программы появятся серъезные security issues
Как вы думаете?