Square और rectangle
Liskov Substitution Principle का उल्लंघन दिखाने वाला क्लासिक उदाहरण Circle-Ellipse problem है, जिसे कभी-कभी Square-Rectangle problem भी कहा जाता है.
सहज रूप से लगता है कि आप एक Rectangle क्लास परिभाषित कर सकते हैं, जिसके attributes h और w हों (ऊँचाई और चौड़ाई के लिए), और फिर Rectangle से इनहेरिट करने वाला Square क्लास बनाएँ. आखिरकार, square तो rectangle "is-a" ही है!
दुर्भाग्य से, यह सहज समझ object-oriented डिजाइन पर लागू नहीं होती.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Define a Rectangle class
____
# Define a Square class
____