อย่างที่ได้กล่าวมา จากตาราง Token Type ด้านล่าง ผมจึงออกแบบคลาสดังนี้
(รูปหมายเลข 139)
สร้างคลาสชื่อ TokenType
(รูปหมายเลย 155)
(รูปหมายเลข 155_1)
- ชื่อของ Type ทั้งหมดในตารางกำหนดให้เป็นค่าคงที่ (final)
- กำหนดให้เป็น static (ถูกโหลดเข้าสู่หน่วยความจำทั้งหมดเมื่อเรียกใช้ครั้งแรก และสามารถอ้างถึงโดยใช้เครื่องหมาย . (dot) หลังชื่อคลาส โดยไม่ต้องสร้างคลาสออบเจ็กต์)
เช่น TokenType.KEYWORDS, TokenType.IDENTIFIERS เป็นต้น
(รูปหมายเลข 155_2)
- เพิ่มบริการขอชื่อ Type ที่มีชนิดเป็น String โดยส่ง Index ของ Type (จากค่าคงที่) เข้าไปแทน
เช่น ส่ง 103 ผลลัพธ์จะได้ "Identifiers"
อ่านเนื้อหาที่เกี่ยวข้อง ก่อนหน้า หรือ ถัดไป
ไม่มีความคิดเห็น:
แสดงความคิดเห็น