«interface»
Shape
+ area(): double
Circle
- r: double
+ area()
Square
- s: double
+ area()
Triangle
- b, h
+ area()
One interface, many implementations
1interface Shape { double area(); }23class Circle implements Shape { double area(){ return PI*r*r; } }4class Square implements Shape { double area(){ return s*s; } }5class Triangle implements Shape { double area(){ return b*h/2; } }
State
contractarea(): double