Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python รองรับความหลากหลายหรือไม่?


ใช่ ,Python รองรับ ความหลากหลาย

คำว่า polymorphism หมายถึง มีหลายรูปแบบ

ความหลากหลาย เป็นคุณลักษณะที่สำคัญของการกำหนดคลาสใน Python ที่ใช้เมื่อคุณตั้งชื่อเมธอดทั่วคลาสหรือคลาสย่อยโดยทั่วไป

ความหลากหลายสามารถทำได้ผ่านการสืบทอด โดยมีคลาสย่อยที่ใช้เมธอดของคลาสฐานหรือแทนที่พวกมัน

ความหลากหลายมีสองประเภท

  • โอเวอร์โหลด
  • การเอาชนะ

โอเวอร์โหลด :การโอเวอร์โหลดเกิดขึ้นเมื่อสองเมธอดหรือมากกว่าในคลาสหนึ่งมีชื่อเมธอดเหมือนกัน แต่มีพารามิเตอร์ต่างกัน

เอาชนะ :การแทนที่หมายถึงมีสองเมธอดที่มีชื่อเมธอดและพารามิเตอร์เหมือนกัน (เช่น ลายเซ็นเมธอด) เมธอดหนึ่งอยู่ในคลาสพาเรนต์และอีกเมธอดอยู่ในคลาสย่อย

ตัวอย่าง

class Fish():
   def swim(self):
      print("The Fish is swimming.")

   def swim_backwards(self):
      print("The Fish can swim backwards, but can sink backwards.")

   def skeleton(self):
      print("The fish's skeleton is made of cartilage.")

class Clownfish():
   def swim(self):
      print("The clownfish is swimming.")

   def swim_backwards(self):
      print("The clownfish can swim backwards.")

   def skeleton(self):
      print("The clownfish's skeleton is made of bone.")

a = Fish()
a.skeleton()
b = Clownfish()
b.skeleton()

เมื่อเรารันโปรแกรมด้วยคำสั่ง python polymorphism.py เราจะได้ผลลัพธ์ที่คาดหวัง -

ผลลัพธ์

The fish's skeleton is made of cartilage.
The clownfish's skeleton is made of bone.