Я пытаюсь найти способ заменить унаследованный конечный метод своей собственной реализацией с использованием jMockIt.
Допустим, у меня есть следующее:
public class Base {
...
public final int getX() {...}
}
public class Derived extends Base {
}
Есть ли способ, которым я могу переопределить getX (), чтобы всегда возвращать, например, 10?
Я пытался сделать что-то вроде этого:
new Base() {
@Mock
public int getX() {
return 10;
}
};
Derived d= new Derived();
System.out.println(d.getX());
Что приводит к исключению времени выполнения из-за невозможности jMockIt найти подходящий метод для int getX ().
Я наткнулся на эту тему:
http://groups.google.com/group/jmockit-users/browse_thread/thread/27a282ff2bd4ad96
Но я не совсем понимаю решение, предоставленное там.
Кто-нибудь может помочь?