The following OOM model checks are made on generalizations:
Check |
Description and Correction |
---|---|
Redundant generalizations |
Only one generalization is allowed between two classes or two interfaces. Manual correction: Remove redundant generalizations Automatic correction: None |
Class multiple inheritance |
The following check applies only to Java and PowerBuilder. Multiple inheritance is accepted in UML but not in this language. Manual correction: Keep single inheritance Automatic correction: None |
Extend final class |
A final class cannot be extended. Manual correction: Remove the generalization link, or remove the final property in the parent class Automatic correction: None |
Non-persistent specifying attribute |
If a generalization has a specifying attribute, the attribute must be marked as persistent. Manual correction: Select the Persistent checkbox on the Detail tab of the specifying attribute property sheet. Automatic correction: None |
Generalization generic missing child type parameters |
A child of a generic classifier must resolve all of the type parameters defined by its parent. Manual correction: Resolve the missing type parameters. Automatic correction: None. |
Generalization generic child cannot be bound |
A bound classifier cannot be the child of any classifier other than its generic parent. Manual correction: Remove the additional links. Automatic correction: None. |