วันจันทร์ที่ 10 ธันวาคม พ.ศ. 2555

ไวยากรณ์ภาษาจาวา

การประกาศ Class



              
 
ในรูปนี้เป็นเพียงการประกาศ ตัวแปร(Member variable) และเมธอด (Method) ของคลาสเท่านั้น
ยังมีการประกาศ Property ที่เป็นการกำหนดคุณสมบัติให้กับตัวแปรอีก ใน Objective-C นั้นเราสามารถ
ประกาศตัวแปรได้ทั้ง 2 แบบ คือแบบ Strong type และแบบ Weak type สำหรับการประกาศแบบ Strong type ก็ประกาศแบบปกติ
โดยขึ้นต้นด้วยชื่อ class และตามด้วย * (หมายถึงการเป็น pointer) และตามด้วยชื่อของ object ที่เราจะตั้ง แต่การประกาศแบบ Weak type นั้นจะใช้คำว่า id นำหน้า
โดย “ไม่ต้องมี *” เพราะการประกาศ id นั้นจะเป็นการประกาศตัวแปรที่เป็น pointer ไปโดยอัตโนมัติ ซึ่งจะใช้บ่อยอยู่พอสมควรในกรณีที่เราไม่รู้ว่า object นั้นเป็น type อะไร
 
การประกาศ Attribute

     Attribute คือ สิ่งที่บ่งบอกลักษณะของวัตถุ อาจเป็นลักษณะที่มองเห็น สถานะ คุณภาพ ปริมาณ
Attribute ของ สมุดบัญชี ประกอบด้วยเลขที่บัญชี รหัสลูกค้า
     ค่าที่เก็บในวัตถุของสมุดบัญชีแต่ละเล่มจะเป็นข้อมูลของบัญชีนั้น
การประกาศ attribute ของ object คือ การประกาศตัวแปร(variable)ไว้ในคาส
แต่ละวัตถุมีตัวแปรชื่อเหมือนกัน แต่ละคำในตัวแปรมีได้ต่างกัน จึงมักเรียกตัวแปรของวัตถุเหล่านี้เรียกว่า instance variable

 
การประกาศ Method

       การติดต่อสื่อการในระหว่าง object นั้นเราจะเรียกว่าการส่ง message นะครับ ความจริงมันก็เป็นเรื่องปกติของทุกอย่างบนโลกอยู่แล้วว่าถ้าวัตถุสองอย่างจะติดต่อสื่อสารกันได้ก็ด้วยการส่งข้อความไปมาระหว่างกัน ซึ่งการส่ง message ในการเขียนโปรแกรมแบบ OOP นั้นก็คือการสั่งให้ object ทำงานตาม method ที่ตัวเองสามารถตอบสนองและรู้ว่าจะต้องทำงานอะไรบ้าง โดย Method ในภาษา Objective-C นั้นมี 2 แบบ คือแบบที่มี เครื่องหมาย ” + ” (บวก) และ เครื่องหมาย ” – ” (ลบ) นำหน้า สองอันนี้ต่างกันตรงที่
 method ที่มีเครื่องหมาย ” – ” นำหน้า : เป็น method ทั่วไปที่เอาไว้กำหนดการทำงานต่างๆ ของ class ซึ่งจะเรียกใช้ method แบบนี้ได้ แน่นอนเราต้องมีการสร้าง object ของ class นั้นๆ ขึ้นมาซะก่อน
 method ที่มีเครื่องหมาย ” + ” นำหน้า : เป็น method ที่ไม่จำเป็นต้องมีการสร้าง object ขึ้นมาก่อนแต่จะสร้าง object ขึ้นมาหลังจากที่ method นี้ถูกเรียกใช้
สำหรับรูปแบบการประกาศ method ในภาษานี้นั้นอาจจะดูแปลกๆ หน่อย เพราะ parameter แต่ละตัวจะมี keyword กำกับเป็นของตัวเอง โดยคั่นด้วย ” : ”
และการกำหนด type ของ parameter แต่ละตัวก็จะต้องวงเล็บไว้หน้า parameter นั้นๆ ซึ่งอาจจะดูยาวไปแต่ผมชอบเพราะมันอ่านเป็นภาษาคนมากกว่าภาษาอื่นๆ
มันแทบจะทำให้เราเข้าใจเลยด้วยซ้ำว่า method นี้เอาไว้ทำอะไรแค่เพียงอ่านชื่อ method
 
 


การประกาศ object

      object คือชุดของข้อมูลเกี่ยวกับเรื่องใดเรื่องหนึ่ง ซึ่ง object จะมีทั้งแบบที่เราสรา้งขึ้นมาใหม่เพื่อไว้ใช้งานเองกับแบบที่ javascript สร้างขึ้นมาไว้แล้ว
ผมจะให้ดูวิธีการสร้าง object แบบที่มีลักษณะการำงานเหมือน Array จะได้เข้าใจง่าย คือโดยเริ่มต้นที่เราสร้าง object ขึ้นมา จะเป็นแค่ object เปล่าๆ
 แต่เราสามารถเก็บข้อมูลลงไปได้หลายข้อมูลในหนึ่งๆ object โดยใช้วิธีการอ้างอิงถึง Property เช่น การเก็บข้อมูลพนักงาน เราอาจจะเเก็บ ชื่อ นามสกุล เงินเดือน
หน้าที่ ตำแหน่ง อายุ เป็นต้น
ตัวอย่าง :: การสร้าง Object
var employee = { name:”teerapuch”, lastname:”kassakul”,age:27};

 
 
การเรียกใช้ Methods
    class hello7 { public static void main(String args[]) { minihello(); } static void minihello() { System.out.println("result of mini hello"); } }

 
  
การเรียกใช้ Attributes

แบบที่ 1 :ClassName object = new ClassName().attributeName;
               Person bamboo = new Person().name;
แบบที่ 2 : ClassName object = new ClassName();object.attributeName;
               Person bamboo = new Person();bamboo.name = "bamboolabcode";

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