ให้เรตสมาชิก: 5 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งาน
 

การเขียนโปรแกรมด้วยไพทอนแบบ Python OOP - Object-oriented programmingเราสามารถสือทอดความสามารถของคลาสที่สร้างไว้อยู่แล้ว (คลาสแม่) มาให้คลาสใหม่ที่กำลังจะขึ้น (คลาสลูก) เหมือนการเขียนแบบ OOP ในภาษา Java หรือ php  และในไพทอนสามารถสือทอดความสามารถจากคลาสแม่หลายๆ คลาสมายังคลาสลูกได้
รูปแบบ

class SubClassName (ParentClass1[, ParentClass2, ...]):
   'คำอธิบายคลาส'
   class_suite

ตัวอย่าง class_inheritance.py

class Parent:        # สร้างคลาสแม่
   parentAttr = 100
   def __init__(self):
      print ("constructor ของ คลาสแม่")

   def parentMethod(self):
      print ('method ของคลาสแม่')
      
   def parentMethod2(self):
       print('method2 ของคลาสแม่')
   
   def setAttr(self, attr):
      Parent.parentAttr = attr

   def getAttr(self):
      print ("Parent attribute :", Parent.parentAttr)

class Child(Parent): # สร้างคลาสลูก
    def __init__(self):
        print ("constructor ของ คลาสลูก")

    def childMethod(self):
        print ('method ของคลาสลูก')
        
    def chidgetAttr(self):
        print(' Attr ที่กำหนดไว้ในคลาสแม่ เรียกใช้โดยคลาสลูก', self.parentAttr)
        
c = Child()          # instance of child
c.childMethod()      # เรียกใช้ method คลาสลูก
c.parentMethod()     # เรียกใช้ method ของคลาสแม่
c.parentMethod2()   # เรียกใช้งาน method 2 ของคลาสแม่
c.setAttr(200)       # เรียกใช้ method ของคลาสแม่
c.getAttr()          # เรียกใช้ method ของคลาสแม่ 
c.chidgetAttr() # เรียกใช้ method ของคลาสลูก


ผลที่ได้
constructor ของ คลาสลูก
method ของคลาสลูก
method ของคลาสแม่
method2 ของคลาสแม่
Parent attribute : 200
 Attr ที่กำหนดไว้ในคลาสแม่ เรียกใช้โดยคลาสลูก 200


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
การใช้ try-catch จับ Exception ในภาษา Java
โดย nai_cyp พฤ 13 ส.ค. 2020 2:47 pm บอร์ด Share Knowledge
0
8
พฤ 13 ส.ค. 2020 2:47 pm โดย nai_cyp
การใช้ switch ในภาษา Java
โดย nai_cyp พฤ 13 ส.ค. 2020 2:45 pm บอร์ด Share Knowledge
0
6
พฤ 13 ส.ค. 2020 2:45 pm โดย nai_cyp
การใช้คำสั่ง break และ continue ในภาษา Java
โดย nai_cyp พฤ 13 ส.ค. 2020 2:44 pm บอร์ด Share Knowledge
0
5
พฤ 13 ส.ค. 2020 2:44 pm โดย nai_cyp
การใช้ Do-While loop ในภาษา Java
โดย nai_cyp พฤ 13 ส.ค. 2020 1:37 pm บอร์ด Share Knowledge
0
7
พฤ 13 ส.ค. 2020 1:37 pm โดย nai_cyp
การใช้ For-loop ในภาษา Java
โดย nai_cyp พฤ 13 ส.ค. 2020 1:36 pm บอร์ด Share Knowledge
0
6
พฤ 13 ส.ค. 2020 1:36 pm โดย nai_cyp
การใช้ While-loop ในภาษา Java
โดย nai_cyp พฤ 13 ส.ค. 2020 1:33 pm บอร์ด Share Knowledge
0
8
พฤ 13 ส.ค. 2020 1:33 pm โดย nai_cyp
โปรแกรมตัดต่อ VDO ที่ฟรี บน windows
โดย nai_cyp พฤ 13 ส.ค. 2020 11:35 am บอร์ด Share Knowledge
2
19
พฤ 13 ส.ค. 2020 12:36 pm โดย nai_cyp
สร้าง crontab ใน Directadmin แล้ว Error Error Creating Cron Job
โดย mindphp พ 12 ส.ค. 2020 5:08 am บอร์ด Linux - Web Server
1
30
พ 12 ส.ค. 2020 5:17 am โดย mindphp
Undertaker เปิดตัวด้วยเพลงของ Metalica (ดนตรี)
โดย nai_cyp อ 11 ส.ค. 2020 5:20 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
อ 11 ส.ค. 2020 5:20 pm โดย nai_cyp
Green Day ปล่อยเพลงใหม่ช่วง COVID-19 (ดนตรี)
โดย nai_cyp อ 11 ส.ค. 2020 5:16 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
อ 11 ส.ค. 2020 5:16 pm โดย nai_cyp
BLACKPINK โปสเตอร์ทีเซอร์ใหม่? (ดนตรี)
โดย nai_cyp อ 11 ส.ค. 2020 5:11 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
11
อ 11 ส.ค. 2020 5:11 pm โดย nai_cyp
Liam Gallagher ในช่วง COVID-19 ระบาด (ดนตรี)
โดย nai_cyp อ 11 ส.ค. 2020 5:10 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
10
อ 11 ส.ค. 2020 5:10 pm โดย nai_cyp
Khalid ในช่วง COVID-19 ระบาด (ดนตรี)
โดย nai_cyp อ 11 ส.ค. 2020 5:07 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
อ 11 ส.ค. 2020 5:07 pm โดย nai_cyp
Green Day ในช่วง COVID-19 ระบาด (ดนตรี)
โดย nai_cyp อ 11 ส.ค. 2020 5:01 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
12
อ 11 ส.ค. 2020 5:01 pm โดย nai_cyp
การคำนวณเงินหากลูกค้าเป็นสมาชิกโดยใช้ If/else ในภาษา Java
โดย nai_cyp จ 10 ส.ค. 2020 7:10 pm บอร์ด Share Knowledge
0
23
จ 10 ส.ค. 2020 7:10 pm โดย nai_cyp
การหาค่า BMI ในภาษา Java
โดย nai_cyp จ 10 ส.ค. 2020 6:45 pm บอร์ด Share Knowledge
0
16
จ 10 ส.ค. 2020 6:45 pm โดย nai_cyp
ขั้นตอนการใช้ SMS Gateway
โดย natthanit.r2538 พ 08 ก.ค. 2020 11:42 am บอร์ด Programming - PHP
1
12
พ 08 ก.ค. 2020 7:10 pm โดย natthanit.r2538
การรับค่า Input ในภาษา Java
โดย nai_cyp จ 10 ส.ค. 2020 5:30 pm บอร์ด Share Knowledge
0
41
จ 10 ส.ค. 2020 5:30 pm โดย nai_cyp
สถานที่ท่องเที่ยวในกรุงเทพ
โดย nai_cyp จ 10 ส.ค. 2020 3:16 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
38
อ 11 ส.ค. 2020 1:59 pm โดย Sirayu
ภาพอาการแบตบวม ของ Asus ZenBook UX430UQ
โดย mindphp อ 09 ส.ค. 2020 11:40 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
47
อ 11 ส.ค. 2020 12:09 pm โดย mindphp