/** *
Marker Interface: Contract
* Contracts are interface-like constraints on a class that must
* be implemented by programming conventions since the Java language
* provides no mechanism to declare these constraints. By convention,
* classes may publish their "pledges" to abide by the contract conventions
* by implementing the marker interface associated with that contract.
* These marker interfaces all extend this root marker interface.
* While the code may or may not actually use the marker interfaces
* at runtime, this marker interface mechanism provides as a side effect
* a very good mechanism to document the contracts via JavaDoc in that
* it allows both contract definition AND easy reference from each class
* to these contract definitions because JavaDoc produces links to all
* app-level interfaces implemented in the class's JavaDoc page.
*/
public interface Contract {}