...
| Code Block | ||
|---|---|---|
| ||
abstract class Client implements User {
public abstract void freeService(); // Delegate implementation of new method to subclasses
// Other concrete implementations
}
|
...
Applicability
Failing to publish stable, flaw-free interfaces can break the contracts of the implementing classes, pollute the client API, and possibly introduce security weaknesses in the implementing classes.
Guideline | Severity | Likelihood | Remediation Cost | Priority | Level |
|---|---|---|---|---|---|
MSC64-JG | low | probable | high | P2 | L3 |
Related Vulnerabilities
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
Bibliography
[Bloch 2008] Item 18: "Prefer interfaces to abstract classes"
...