@startuml class Vehicle { -img: PImage + {abstract} getDescription(): String + draw (x: Number, y: Number, size: Number): void } class Car { - passengers: Number + constructor (passengers: Number) + getDescription (): String } class Truck { - load: Number + constructor (load: Number) + getDescription (): String } class SportCar { - fullOp: Bolean + constructor (fullOptions: Boolean) + getDescription (): String + getTurbo (): String + getOptions (): String } class Convertible { + constructor() + getDescription(): String + getRooftop(): String } Vehicle <|.. Car Vehicle <|.. Truck Car <|-- SportCar SportCar <|-- Convertible @enduml