PDA

View Full Version : อยากให้เขียนเกี่ยวกับ class ,__init__, self พวกนี้ครับไม่ค่อ



Anonymous
01-12-2004, 04:22 PM
อยากให้เขียนเกี่ยวกับ class ,__init__, self พวกนี้ครับไม่ค่อยเข้าใจ
รบกวนให้ยกตัวอย่างด้วยนะครับ อ่านดูแล้วยัง งงๅ อยู่ :wob:

asylu3
01-12-2004, 08:53 PM
อยากให้เขียนเกี่ยวกับ class ,__init__, self พวกนี้ครับไม่ค่อยเข้าใจ
ไม่ทราบว่าเคยเขียน c++ รือ java มาก่อนไหมครับถ้าเคยหลักการก็คล้ายๆกันครับ
คือ
__init = Constructor ฟังค์ชั้นที่จะเรียกใช้งานทุกครั้งที่สร้าง Object
self = ก็คล้ายกับ this ครับคืออ้างถึงตัวของ class เอง

nprotech
14-01-2005, 08:34 PM
ใช่ครับ.. เรื่องนี้เป็นหลักการเขียนโปรแกรมเชิงวัตถุ หรืออ็อบเจ็คโอเรียลเท็ดโปรแกรมมิ่ง หรือ โอโอพี (Object Oriented Programming : OOP)

สมมติว่าผมประกาศ
>>> class POINT:
def __init__(self,x,y):
print "This is constructor function:"
self.x = x
self.y = y
def show(self):
print self.x, self.y

>>> p1 = POINT(3,2)
>>> p1.show()
3 2

จากตัวอย่างนี้ เราได้มีคลาสชื่อ POINT และเราสร้างอ็อบเจ็ค p1 เป็นอินสแตนท์ของคลาส POINT

ส่วนตัวแปร self หมายถึงตัวอ็อบเจ็คของมันเอง !!
ไม่จำเป็นต้องเป็นคำว่า self เป็นคำว่า this หรือ aha หรือ oh ก็ได้เพราะมันเป็นเพียงชื่อของอ็อบเจ็คเท่านั้น

ผมอธิบายเพียงแค่นี้ก่อนนะครับ เพราะเหนื่อยมาก เอาไว้โอกาสหน้าจะเข้ามาตอบอีกครั้งครับ