While we use any method from the interface it asks us to override all unimplemented method. also we are using '@Override' annotation while implementing the method. Does it really called overriding ? because interface contains only method definition(no executable code). The interface is say,
public interface ITestListener extends ITestNGListener {
void onTestStart(ITestResult result);
public void onTestSuccess(ITestResult result);
public void onTestFailure(ITestResult result);
public void onTestSkipped(ITestResult result);
public void onTestFailedButWithinSuccessPercentage(ITestResult result);
}
and the implementing class is
public class TestNGTestBase implements ITestListener{ @Override
public void onTestStart(ITestResult result) {
//xyz
} @Override
public void onTestSuccess(ITestResult result) { /// xyz} @Override
public void onTestSkipped(ITestResult result) {
}
@Override
public void onTestFailedButWithinSuccessPercentage(ITestResult result) {
// TODO Auto-generated method stub
}}
also why is this mandatory to override all the methods in the interface ?