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);