// 通过继承创建替身class PriceCalculatorStub extends PriceCalculator { private int expectedPrice; public PriceCalculatorStub(int expectedPrice) { this.expectedPrice = expectedPrice; } @Override public int sum(int a, int b) { return expectedPrice; // 返回预设值 }}
Spy
// 通过继承创建间谍class ExpressServiceSpy extends ExpressService { private int callCount = 0; private List<Integer> calledParams = new ArrayList<>(); @Override public int getTodayPrice() { callCount++; return 20; } public int getCallCount() { return callCount; } public boolean wasCalled() { return callCount > 0; }}