Liskovov princip supstitucije (LSP) navodi da objekti podtipa moraju biti zamjenjivi za svoj bazni tip bez narušavanja ispravnosti programa. Ako kod radi sa Base, mora raditi sa bilo kojom Subclass — ista ponašanja očekivanja, bez iznenađenja.
Zašto je to važno
{
w, h;
{ .w = w; }
{ .h = h; }
{ w * h; }
}
{
{ .w = w; .h = w; }
{ .w = h; .h = h; }
}
{
r.setWidth();
r.setHeight();
r.area() == ;
}
