Precondition of redefined method at most as strong
public class Employee { /** Sets the employee salary to a given value. @param aSalary the new salary @precondition aSalary > 0 */ public void setSalary(double aSalary) { ... } }
Can we redefine Manager.setSalary with precondition salary > 100000?
No--Could be defeated:
Manager m = new Manager(); Employee e = m; e.setSalary(50000);