Declaration and initialization
Method requirements
Property requirements
Constructor requirements
Subscript requirements
Inheritance of abstract classes
Multiple inheritance
Conformance checking (is, as)
Collection of similar objects