วันจันทร์ที่ 25 ตุลาคม พ.ศ. 2553

Compiler : คลาส Token (ภาษา Java)

กลับมาโค้ดโปรแกรมสำหรับ Symbol Table และตาราง Token Type กันครับ

เริ่มจากสร้างคลาส SymbolTable (รูปหมายเลข 141)

ทว่า Symbol Table ประกอบด้วย Tokens ดังนั้นสร้างคลาส Token เพิ่ม
(รูปหมายเลข 142)

เรามาดูรายละเอียดโค้ดของคลาส Token เสียก่อน
(รูปหมายเลข 143)
- บรรทัดที่ 2 และ 3 ประกาศแอตทริบิวต์ชื่อ nameIndex และ typeIndex ทั้งสองนี้จะใช้แทนชื่อฟิวด์ของ Symbol Table ที่ได้นำเสนอในบทความก่อนหน้านี้นั่นคือ tokenIndex และ tokenType ตามลำดับ
- บรรทัดที่ 5 และ 10 สร้าง Constructor แบบที่รับ Argument เป็น nameIndex และ typeIndex กับแบบที่ไม่รับ Argument ใดๆ
- บรรทัดที่ 11 ประโยคนี้หมายถึงเรียกไปยัง Constructor แบบที่รับ Argument เป็น nameIndex และ typeIndex โดยส่งค่า -1 ไปให้ทั้งคู่

(รูปหมายเลข 144)
- คุณสมบัติพื้นฐานอย่างหนึ่งที่เกี่ยวกับแอตทริบิวต์ก็คือการเขียนโค้ดส่วนที่เรียกว่า Getter และ Setter เพื่อขอค่าและกำหนดค่าให้กับแอตทริบิวต์ตามลำดับ
- คลิกขวา ณ บรรทัดที่ 14 (ตามรูปข้างต้น) เลือก Insert Code...

(รูปหมายเลข 145)
- เลือก Getter and Setter...

(รูปหมายเลข 146)
- คลิกเพื่อสร้างเครื่องหมายถูกด้านหน้าช่องว่างของ Token แล้วกด Generate

(รูปหมายเลข 147)
- NetBeans IDE จะสร้างโค้ดส่วน Getter และ Setter ให้โดยอัตโนมัติครับ

(รูปหมายเลข 147_1)
- คลิกขวา ณ บรรทัดที่ 30 (ตามรูปข้างต้น) เลือก Insert Code...

(รูปหมายเลข 147_2)
- คลาสใดๆที่ถูกสร้างขึ้น จะต้องถูกสืบทอดจากคลาสบรรพบุรุษเสมอ (Object Class) หนึ่งในหลายเมธอดที่ถูกสืบทอดมาชื่อ toString()
- เราจะเขียนพฤติกรรมของเมธอด toString() นี้เสียใหม่ เรียกกระบวนการนี้ว่า Overriding (เพิ่มเติม)
- จากรูปเลือก toString()...

(รูปหมายเลข 147_3)
- เลือกแอตทริบิวต์ nameIndex และ typeIndex แล้วกดปุ่ม Generate

(รูปหมายเลข 147_4)
- โค้ดส่วนนี้คือผลลัพธ์การ Overriding ครับ

ขณะนี้เราเตรียม (จัดการ) คลาส Token เรียบร้อยแล้ว จะได้เริ่มเขียนคลาส SymbolTable ต่อเสียที ^^

อ่านเนื้อหาที่เกี่ยวข้อง ก่อนหน้า หรือ ถัดไป

1 ความคิดเห็น: