System.out.println("A read operation on a field is encountered ");
Как я могу добавить заявление, позволяет сказать, приведенное выше утверждение, всякий раз, когда операция чтения была выполнена на нелокального поля? , а также мне нужно знать подробности о поле, которое читается и множество деталей должно соответствовать уникальности поляДобавление заявления с использованием Javassist
Пример (для удаления абстракции в вопросе):
public class Greet{
int knowncount;
public Greet()
{
System.out.println("Hello");
knowncount++;
}
public Greet(String language)
{
if(String.equals("ENGLISH")) {System.out.println("Hello"); knowncount++; }
else if(String.equals("SPANISH")) {System.out.println("Hola"); knowncount++;}
else System.out.println("Language not recognized");
}
public void showCount()
{
System.out.println("count : "+knowncount);
}
}
и тестовый класс пользователя:
class test{
public static void main(String[] args){
Greet g("SPANISH");
g.showCount();
}
}
в приведенном выше примере после использования Javassist нашего кода должны вывести:
A read operation on a field is encountered
1
Вам нужно показать больше усилий. Либо покажите попытку и объясните проблему с ней, либо сообщите нам, что вы не понимаете о «добавлении инструкции с помощью javaassist *». Ваш вопрос в настоящее время слишком широк. –
@VinceEmigh: Я добавил пример, чтобы проиллюстрировать то же самое, пройдите через него и сообщите мне, сохраняется ли широта –
. Вы можете писать ключевые слова, такие как 'public' и' class', с заглавной буквой в «JavaAssist»?(Я не знаю, что библиотека) – Tom