วันอาทิตย์ที่ 9 ธันวาคม พ.ศ. 2555

การเขียนโปรแกรมเชิงวัตถุ




คำศัพท์ Object- Oriented

 
1.Abstraction
2.Encapsulation
3.Modularity
4.Hierarchy
5.class
6.object

1.Abstraction
       ในทาง OOP การทำ Abstraction คือการซ่อน attribute และ behaviour ทุกอย่างที่ไม่เกี่ยวข้องกับ object เพื่อช่วยลดความซับซ้อนและเพิ่มประสิทธิภาพในการใช้งานAbstraction คือการแสดงถึงคุณลักษณะและพฤติกรรมของ object เท่าที่จำเป็นต้องรับรู้และใช้งานโดยซ่อนส่วนที่เหลือเอาไว้เพื่อไม่ให้เกิด ความสับสน(data hidding และ encapsulation) วิธีการสร้างให้ระบบเรามีคุณสมบัติ Abstraction คือใช้หลักของ Abstract Class หรือ Interface





2.Encapsulation
       คือ การรวม data และ method ทั้งหลายที่เกี่ยวข้องกัน และทำงานร่วมกันเอาไว้ใน object หนึ่งๆนอกจากนี้แล้วยังมีการซ่อนรายละเอียดของการทำงานของ method ต่างๆใน object เอาไว้ และไม่ให้ object อื่นๆสามารถที่จะเข้าไปแก้ไข data ได้โดยตรง





3.Modularity
การเรียงลำดับ
 - ลดความซ้ำซ้อนของระบบ
 - สะดวกในการจัดการเมื่อมีการเปลี่ยนแปลง




4.Hierarchy
       การจัดระบบตามลำดับขั้น




5.Class
       สำหรับคลาส  (Class)  คือ  กลุ่มของชนิดข้อมูล ซึ่งอาจจะประกอบด้วยฟังก์ชัน  หรือกระบวนการ (Procedure)  ด้วยส่วนวัตถุ  (Object) ของคลาสหนึ่งๆจะเป็นค่าชนิดของข้อมูล  หรือตัวแปรซึ่งมีค่าเป็นชนิดของข้อมูลนั้นๆ ก็ได้  เช่น คลาส N  เป็นชนิดของกลุ่มข้อมูลจำนวนเต็ม ดังนั้น { 1, 2 }  เป็นวัตถุของคลาส N  ขณะที่ตัวแปร n  ถูกกำหนดให้เป็นสมาชิกของคลาส  N  และมีค่าเป็น { 1, 2, 3, 4 }  ก็ได้






6. Object
       Object คือ สิ่งที่มีคุณสมบัติและพฤติกรรมตามที่กําหนดไว้ในคลาส
Object ประกอบไปด้วย
       1) คุณลักษณะ (attribute) หรือข้อมูล (data)
       2) เมธอด (method) หรือพฤติกรรม (behavior)
       3) คุณลักษณะ (attribute) หรือข้อมูล (data) ข้อมูลของ Object แต่ละ Object อาจมีข้อมูลที่แตกต่างกัน
       4) เมธอด (method) หรือพฤติกรรม (behavior) สิ่งที่ Object สามารถกระทำได้











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

2.1 การประกาศ class
2.2 การประกาศ attributes
2.3 การประกาศ methods
2.4 การประกาศ object
2.5 การเรียกใช้ methods
2.6 การเรียกใช้ attributes
 










        1.  การประกาศ Class
ไวยกรณ์  <modifiers>  class <class_name>{

          

             [attribute declaration]

             [constructor declaration]

             [method declaration]

}
 



        2.  การประกาศ attributes  ต้องเขียนอยู่ภายในปีกกาของ class (ไม่สนใจลำดับก่อนหลัง)

ไวยกรณ์    
[<modifiers>]  type  name [= value ];



           3. การประกาศ methods เป็นส่วนที่ใช้นิยามการทำงานของ object  (Operation/Behavior)
ไวยากรณ์ [<modifiers>]  type 
name([ argument list ]){ คำสั่ง  }


"main"  static Method

       -class ที่จะสามารถใช้คำสั่ง java ในการรันได้ จะต้องมี method main

       -รูปแบบการประกาศ  public static void main(String[ ] args)





            4.   การประกาศ object

รูปแบบการประกาศ 
  [modifier] ClassName objectName;


ตัวอย่าง
 
 Student  s1;

 
รูปแบบการสร้าง
  objectName = new ClassName([arguments]); 
  ตัวอย่าง
s1 = new Student();
                         



     5.  การเรียกใช้ methods  กำหนดขอบเขตของการเรียกใช้ method นั้น

 

static          -->          เรียกใช้งานได้โดยไม่จำเป็นต้องสร้าง object


public        -->          ถูกเรียกใช้จากทุก class


private       -->          ถูกเรียกใช้ได้เฉพาะภายใน class ที่ประกาศ method นี้เท่านั้น

 
<blank>     -->          ถูกเรียกใช้โดย class ที่อยู่ใน package เดียวกันกับ class  ที่ประกาศ method นี้

     
  

6. การเรียกใช้ 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";







ไม่มีความคิดเห็น:

แสดงความคิดเห็น