Встречается на собеседованиях • сегодня
От чего зависит CGLib
CGLib (Code Generation Library) — это библиотека для генерации байткода в runtime. Её производительность и возможности зависят от:
- Версии Java – CGLib использует внутренние API JVM, которые могут меняться между версиями.
- Настройки JVM – например,
-XX:+UseFastAccessorMethodsможет влиять на производительность сгенерированных прокси. - Ограничения final – CGLib не может проксировать final-классы и методы (в отличие от Java Proxy).
- Конструкторы – требует наличия конструктора по умолчанию у проксируемого класса.
Пример создания прокси:
java
Enhancer enhancer = new Enhancer();
enhancer.setSuperclass(MyClass.class);
enhancer.setCallback((MethodInterceptor) (obj, method, args, proxy) -> {
System.out.println("Before method");
return proxy.invokeSuper(obj, args);
});
MyClass proxy = (MyClass) enhancer.create();
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы