SlideShare a Scribd company logo
1 of 35
บทที่ 7 วิธ ก ารเชิง วัต ถุ
            ี
และการออกแบบคลาส


Srinagarindra The Princess Mother
School              Kanchanaburi
                                    1
 แนวคิด เชิง วัต ถุ(Object Oriented) หมาย
 ถึง การใช้ Object เป็นตัวหลักในการ
 พิจารณาความเป็นจริงต่างๆที่เกิดขึ้นในโลก
 โดยมองทุกสิ่งในโลกเป็นวัตถุทั้งหมด และมอง
 ว่ากิจกรรมที่เกิดขึ้นในโลกนี้เกิดจากความ
 สัมพันธ์และปฏิสัมพันธ์ระหว่างวัตถุ



                                             2
เปรียบเทียบการวิเคราะห์และออกแบบระบบวิธีเดิมกับวิธีเช
               วิธ ีเ ดิม                    วิธ เ ชิง วัต ถุ
                                                 ี
    เริ่มต้นจากการวิเคราะห์เอกสาร   เริ่มต้นการวิเคราะห์จาก Objects
    ผลลัพธ์ และการทำางานของ         ที่ สามารถเห็นได้ชัดเจน
    ระบบงานเดิม

    แตกการทำางานออกเป็นหน่วย        แบ่งกลุ่มของ Object ตาม
    ย่อยๆ                           คุณลักษณะ

    องค์ประกอบต่างๆของระบบ เช่น แต่ละ Object เป็นอิสระต่อกัน
    การประมวลผล การออกรายงาน การเปลี่ยนแปลงจะไม่กระทบกัน
    การคำานวณ จะเกี่ยวพันกัน การ
    เปลี่ยนแปลงจะกระทบซึ่งกันและ
    กัน


                                                                      3
เปรียบเทียบการวิเคราะห์และออกแบบระบบวิธีเดิมกับวิธีเช
                 วิธ ีเ ดิม                  วิธ เ ชิง วัต ถุ
                                                 ี
     การปรับเปลี่ยนระบบต้องแก้ไข   การปรับเปลียนระบบ ทำาได้โดย
                                              ่
     Source Code                   การเปลี่ยน Attributes,
                                   Functions ของ Object

     Tools ที่สนับสนุนมีน้อยลง     Tools ที่สนับสนุนมีมากขึ้น




                                                                 4
 วัตถุ(Object) คือหน่วยสนใจของระบบที่
  ทำาให้เกิดเหตุการณ์ วัตถุเป็นได้ทั้งสิงที่สามารถ
                                        ่
  จับต้องได้ (เช่น โต๊ะ รถยนต์ คอมพิวเตอร์ คน)
  และวัตถุที่ไม่สามารถจับต้องได้ (เช่น บริษัท
  ฝ่ายต่างๆ หลักสูตร)
 การสื่อสารระหว่าง Object เรียกว่า Message




                                                     5
 Class  คือกลุ่มของ Object ที่มีโครงสร้างพื้น
  ฐานพฤติกรรมเดียวกัน Object ที่มคุณสมบัติ
                                    ี
  เดียวกัน ก็จะรวมกลุ่มอยู่ใน Class เดียวกัน
 Class และ Object มีความคล้ายกันมากจน
  ทำาให้หลายคนสงสัยว่าเป็นสิงเดียวกันหรือไม่
                              ่
  ในความเป็นจริง Class ถือว่าเป็น นามธรรม
  (Abstract) ในขณะที่ Object นั้นเป็นสิ่งที่มีตัว
  ตน (Concrete) กล่าวคือ Class เป็นเหมือน
  พิมพ์เขียวของ Object โดยที่ Class จะไม่
  สามารถทำางานได้ แต่ Object สามารถทำางาน
  ได้
                                                   6
Student
 Class นอกจากจะมีชอ Class
                       ื่
 กำากับแล้ว ยังมี คุณสมบัติ    StudentID
                               FirstName
 (Attributes) และ หน้าที่การ   LastName
 ทำางาน (Operations หรือ       Address
 Methods)                      Telephone
            Name               Birthdate
                               Faculty
          Attributes           GPA
                               Register()
          Methods              Drop()
                               Withdraw()
                               ตัวอย่าง Class
                                                7
                                  Student
 การสืบทอดคุณสมบัติ   (Inheritance) คือ การ
 ที่ Subclass ได้รับการถ่ายทอดคุณสมบัติ
 (Attributes) มาจาก Superclass แล้วผนวก
 คุณสมบัติพิเศษเพิ่มเข้าไป



                                     Multiple
                                    Inheritance
 สัญญลักษณ์ที่ใช้
                คือ ลูกศรหัวรูปสามเหลี่ยมใส
 ชีจาก Subclass ไปยัง Superclass
   ้
                                                  8
Without
Inheritance




              With   9
 หลักของการสืบทอดคุณสมบัติจะทำาให้ความ
  สัมพันธ์ระหว่าง Object มีความชัดเจนยิ่งขึ้น
  กล่าวคือถ้ามีความสัมพันธ์ที่ชดเจนมากขึ้น
                                   ั
  เท่าใด จะส่งผลให้การออกแบบระบบงานง่าย
  ขึ้น
 ผู้ออกแบบระบบงานเชิงวัตถุสามารถออกแบบ
  ระบบงานขนาดใหญ่ได้โดยการอาศัย Object
  ที่มีการนิยามไว้ก่อนหรือที่มีผอื่นทำาการ
                                ู้
  ออกแบบไว้ก่อนแล้ว ซึ่งเป็นที่มาของการนำา
  กลับมาใช้ใหม่ (Reusability)                   10
   การสืบทอดคุณสมบัติมีข้อดี คือ
     1. ทำาให้มโครงสร้างที่เป็นระบบ สามารถปรับ
               ี
        เปลี่ยนได้ง่าย
     2. ลดเวลาในการพัฒนาระบบ
     3. ลดค่าใช้จ่ายในการพัฒนาระบบ




                                                 11
 Polymorphism       คือ การที่ Object ที่ต่างกัน
 มีปฏิกิริยาตอบสนองต่อ Function/ Message
 หนึ่งๆในวิธีที่ต่างกัน
 Class  รูปสีเหลี่ยม กับ Class รูปสามเหลี่ยม
              ่
 ได้รับการสืบทอดคุณสมบัติจาก Class รูป
 หลายเหลี่ยม โดยทั้งคูมี Function ที่ชื่อ
                         ่
 draw() เหมือนกัน แต่เมื่อมีการเรียกใช้
 function ดังกล่าว Object ที่สร้างจาก Class
 รูปสี่เหลี่ยมจะมีการวาดรูปสี่เหลี่ยม ขณะที่
 Object ที่สร้างจาก Class รูปสามเหลี่ยมจะมี
 การวาดรูปสามเหลี่ยม                                12
• หลักการ
  Polymorphism
  ช่วยให้สามารถนำา
  code กลับมาใช้ใหม่
  ได้ เนื่องจากสามารถ
  กำาหนดชุดคำาสั่งทั่วไป
  และมอบหน้าที่ราย
  ละเอียดของการนำาไป
  ใช้แก่ Object ที่
  เกี่ยวข้องจัดการ
                           13
 การซ่อนรายละเอียดเป็นพื้นฐานของการปกปิด
  ข้อมูลภายในและวิธีการทำางานของ Object
 ตามแนวคิดเชิงวัตถุ การจะล่วงรู้รายละเอียดข้อมูล
  ของ Object จะต้องได้รับอนุญาตจากเจ้าของ
  Object นันก่อน กล่าวคือการเข้าถึงข้อมูลนั้น จะ
            ้
  ไม่สามารถเข้าถึงได้โดยตรง แต่จะต้องมีการตอบ
  รับจาก Method ใน Object ปลายทางนั้นว่าจะ
  ยอมให้ Object ทีส่ง Message เข้าถึงข้อมูลของ
                   ่
  ตนหรือไม่
 Encapsulation หมายถึง ลักษณะการเขียน
 โปรแกรมทีจะมีการซ่อนข้อมูลทีต้องการควบคุม
          ่                  ่                      14
 กลไกการปกป้องกันข้อมูลและวิธีการทำางาน
 ของ Object สามารถเป็น
  Public (+) ซึ่งสามารถเข้าถึงได้โดยตรงจาก
   ภายนอก
  Private (#) ซึ่งจะถูกใช้งานจากภายใน Class
   เท่านั้น
  Protected (-) ซึ่งจะสามารถเห็นหรือเข้าถึงได้
   จากภายใน Subclass เท่านั้น

                                                  15
 เป็นความสัมพันธ์ระหว่าง   Object หรือ Class
 แบบ 2 ทิศทาง




                                                16
 เป็นความสัมพันธ์ระหว่าง     Object หรือ Class
 แบบ “Whole-Part” หรือ “is part of” โดยจะ
 มี Class ที่ใหญ่ที่สุดที่เป็น Object หลัก และมี
 Class อื่นเป็นส่วนประกอบ




                                                   17
 เป็นความสัมพันธ์
  ระหว่าง Object หรือ
  Class แบบขึ้นต่อกัน
  และมีความเกี่ยวข้องกัน
  เสมอ โดยจะมี Class
  ซึ่งเป็นองค์ประกอบของ
  Class อื่นที่ใหญ่กว่า
 เมื่อ Class ที่ใหญ่กว่า
  ถูกทำาลาย Class ที่
  เป็นองค์ประกอบก็จะถูก
  ทำาลายไปด้วย              18
 เป็นความสัมพันธ์
 ระหว่าง Object หรือ
 Class ในลักษณะ
 ของการสืบทอด
 คุณสมบัติจาก Class
 หนึ่ง (Superclass)
 ไปยังอีก Class หนึ่ง
 (Subclass)


                        19
บทที่ 12 การเขีย นโปรแกรม
โดยใช้ NetBeans



Srinagarindra The Princess Mother
School              Kanchanaburi
                                    20
 NetBeans     IDE  เป็น Freeware Editor อีก
 ตัวหนึ่ง ซึ่งได้รับความนิยมในการใช้พัฒนา
 โปรแกรมโดย NetBeans นั้นสนับสนุนการ
 พัฒนาโปรแกรมในหลายภาษา เช่นJava,
 php, C/C++ นอกจากนี้เรายัง
 สามารถ download PlugIn ต่างๆมาใช้งาน
 ร่วมกับตัว NetBeans เองด้วย ยกตัวอย่าง
 เช่น iReport เป็น Plugin ที่ใช้ในการ
 สร้างreport หรือ Visual Web Page
 Layouts ใช้ในการแสดงตัวอย่างหน้า web          21
   ก่อนที่จะเริ่มใช้งาน NetBeans เราสามารถ download ตัว
    โปรแกรม NetBeans ได้ที่
    http://netbeans.org/downloads/index.html
     โดย NetBeans นั้นมีหลายversion หลาย Platform เรา
    สามารถเลือกภาษา Platform และ version ได้ตามความ
    เหมาะสมเลยครับ 
   เมื่อทำาการ download มาแล้วจะได้เป็น .exe file ซึ่งเรา
    สามารถทำาการติดตั้งโปรแกรมไปยัง directory ที่ต้องการจะ
    ทำาการติดตั้งได้เลย หลังจากติดตั้งโปรแกรมเสร็จสมบูรณ์แล้ว
    เราสามามารถเข้าโปรแกรม NetBeans ได้จาก
    หน้า desktop  


                                                                22
 เมื่อทำาการ download มาแล้วจะได้
 เป็น .exe file ซึ่งเราสามารถทำาการติดตั้ง
 โปรแกรมไปยัง directory ที่ต้องการจะทำาการ
 ติดตั้งได้เลย หลังจากติดตั้งโปรแกรมเสร็จ
 สมบูรณ์แล้ว เราสามามารถเข้า
 โปรแกรม NetBeans ได้จากหน้า desktop  



                                             23
   ในที่นี้เราจะทำาการพัฒนาโปรแกรมด้วยภาษา JAVA เพราะ
    ฉะนั้นจะต้องทำาการdownload ตัว JDK หรือ Java Development 
    Kit เสียก่อน สามารถ downloadได้ที่
    http://www.oracle.com/technetwork/java/javase/downloads/index
   เมื่อ download JDK แล้วก็ต้องทำาการ Set class path เพื่อให้
    สามารถ Compileและ Run Java ได้ โดยวิธทำาสามารถติดตาม
                                              ี
    ได้จาก Link ด้านล่างเลยครับ
    http://archive.oracle.in.th/2008/02/set-path-class-path-j2
    se-dos.htmlหรือ
    http://www.dominixz.com/blog/software-tips/set-java-to-compile



                                                             24
หน้า จอหลัก
ของ NetBeans จะแบ่ง
ออกเป็น  4 ส่ว นใหญ่ๆ
ดัง นีค รับ
      ้




                        25
 เป็นส่วนของแถบเมนู และ Tool ต่างๆ
 เป็นส่วนที่แสดงและจัดการ Project ต่างๆ
  เหมือน
  เป็นการ Browse ดู Projectหรือ File ต่างๆ
 เป็นส่วนที่ใช้ในการเขียน Code
 เป็นส่วนที่ใช้ในการแสดงผลการทำางานต่าง
  เมื่อทำาการ Run โปรแกรม และยังมีสวนของ
                                   ่
  การ debug โปรแกรมด้วย

                                             26
 เมื่อรู้จักหน้าตาหรือ GUI แบบคร่าวๆ
 ของ NetBeans กันแล้วต่อไปก็มาลองเขียน
 โปรแกรมง่ายกันครับ โดยเริ่มจากการ New
 Project ใหม่ขึ้นมา โดยการเลือกที่ File >>
 New Project




                                             27
 จะมีหน้าต่างขึ้นมาให้เราเลือก
                            โดยให้เรา
 ทำาการเลือก Java และ Java Applicationแล้ว
 กด Next




                                             28
 จากนั้นจะมีหน้าต่างให้กำาหนดค่ารายละเอียดต่างๆ
  ของ Project  โดยจะบังคับให้ใส่Project Name ในที่นี้จะ
  ตั้งชือ Project ว่า NetBeansTutorial และชือ Main
         ่                                   ่
  Class ว่า MainClass เมื่อกำาหนดค่ารายละเอียดต่างๆแล้ว
  กด Finish
 เราจะได้ Project ที่ชื่อ
  ว่า NetBeansTutorial และ File ชื่อ MainClass.java ขึ้
  นมา 
  ต่อไปเราจะลองสร้าง class TestObj ขึ้นมา เพื่อลอง
  ใช้ Funtion บางอย่างของNetBeans ครับ
 โดยการสร้าง class ใหม่นั้น เราสามารถทำาได้โดย คลิกขวา
  ที่ชื่อ Project แล้วเลือกNew >> Java Class ดังภาพ
                                                          29
   หลังจากนั้นจะปรากฏหน้าต่างขึ้นมาให้กำาหนดรายละเอียด โดยให้ตั้ง
    ชื่อ Class ว่าTestObj แล้วกด Finish ภายใน class TestObj จะ
    มี code ดังนี้ครับ
   public class TestObj {
       private String firstName;
       private String lastName;
       public void showName() {
          System.out.println("THIS IS METHOD showName()");
          System.out.println("My name is "+firstName+" "+lastName);
       }
   }




                                                                       30
 จะเห็นได้ว่า Attribute ใน Class
  TestObj เป็น private ฉะนันก็จะต้องมี Getter
                              ้
  and Setter เราสามารถที่จะสั่ง
  ให้ NetBeans สร้าง Getter and
  Setter จากAttribute ทีมีอยู่ได้โดยการคลิกขวา
                           ่
  ที่หน้าจอที่ใช้เขียน code แล้วเลือก Insert
  Codeจะปรากฏหน้าต่างขึ้นมาให้เลือกที่  Getter
  and Setter
 หน้าต่างสำาหรับการ Generate Getters and
  Setters จะขึ้นมา ให้เราทำาการเลือกว่าจะ
  สร้าง Getters and Setters ให้                  31
   เราจะได้ code ของ class TestObj ดังนี้            public void setFirst
   public class TestObj {                      Name(String firstName)
         private String firstName;             {
         private String lastName;                          this.firstName 
                                               = firstName;
         public void showName() {                    }
                                                
                System.out.println("THIS IS METHOD showName()");
                                                     public String
                System.out.println("My name is "+firstName+"
    "+lastName);                                getLastName() {
         }                                                 return lastNam
                                               e;
         public String getFirstName() {              }
               return firstName;                
         }                                           public void setLast
                                               Name(String lastName)
                                                {
                                                                            32
                                                            this.lastName =
   นอกจากการ Generate Getters and Setters แล้ว เราสามารถคลิกขวา
    เพื่อดูFunction อื่นๆที่ NetBeans สามารถช่วยจัดการให้การทำางานของ
    เราง่ายขึ้นครับ
    
   เมื่อได้ class TestObj แล้ว ต่อไปเราก็ทำาการ
    แก้ไข code ของ MainClass ให้เป็นดังนี้
   public class MainClass {
         public static void main(String[] args) {
               TestObj temp = new TestObj();
               temp.setFirstName("Itthi");
               temp.setLastName("Kruenarongkul");
               temp.showName();
              
               temp.setFirstName("Monthinee");
               temp.setLastName("Buntawee");
               temp.showName();                                        33
 ในการ code คำาสังต่างๆ เราสามารถกด CTRL
                     ่
  +SpaceBar เพื่อเรียกดูได้ว่าสามารถใช้ method หรือ
  เรียก Attribute ใดมาใช้ได้บ้าง หรือบางที NetBeans ก็
  จะขึ้นส่วนนี้มาให้เอง 
 เมื่อทำาการแก้ไข Code เสร็จเรียบร้อย เราจะลอง
  ทำาการ Run โปรแกรมนี้ดู โดยการกดปุมสีเขียวที่อยูดานล่าง
                                       ่          ่ ้
  แถบเมนู




                                                            34
โดย  NetBeans จะทำาการ Save ให้อัตโนมัติทุกครั้งที่จะ
  ทำาการ Run ถ้า NetBeansทำาการ compile แล้วไม่
  พบ error
  โปรแกรมจะแสดงผลที่สวนด้านล่างดังภาพ
                      ่




                                                        35

More Related Content

What's hot

1.Introduction to java
1.Introduction to java1.Introduction to java
1.Introduction to javaUsableLabs
 
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุ
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุแบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุ
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุAmIndy Thirawut
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นPp'dan Phuengkun
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นTua Tor
 

What's hot (6)

1.Introduction to java
1.Introduction to java1.Introduction to java
1.Introduction to java
 
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุ
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุแบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุ
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุ
 
METHODS
METHODSMETHODS
METHODS
 
บทที่ 8 Methods
บทที่ 8 Methodsบทที่ 8 Methods
บทที่ 8 Methods
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 

Viewers also liked

Alueiden vetovoima 1880 luvulta 2000-luvulle
Alueiden vetovoima 1880 luvulta 2000-luvulleAlueiden vetovoima 1880 luvulta 2000-luvulle
Alueiden vetovoima 1880 luvulta 2000-luvulleTimoAro
 
Intellectual Property in Open Innovation Times
Intellectual Property in Open Innovation TimesIntellectual Property in Open Innovation Times
Intellectual Property in Open Innovation TimesAlberto Minin
 
Alberto Di Minin wwwwwhow social innovation
Alberto Di Minin   wwwwwhow social innovationAlberto Di Minin   wwwwwhow social innovation
Alberto Di Minin wwwwwhow social innovationAlberto Minin
 
Information Technology and Firm Profitability - Team Topaz
 Information Technology and Firm Profitability - Team Topaz Information Technology and Firm Profitability - Team Topaz
Information Technology and Firm Profitability - Team TopazTim Enalls
 
Women and personal finance
Women and personal financeWomen and personal finance
Women and personal financeKrupa Vora
 
Poststream - optimising customer communications
Poststream - optimising customer communicationsPoststream - optimising customer communications
Poststream - optimising customer communicationsTony Edwards
 
2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...
2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...
2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...Keith Atteck C.Tech. ERMm
 
On ap-lioa-clide
On ap-lioa-clideOn ap-lioa-clide
On ap-lioa-clideminhlioa
 
Webinar: Take Control of SharePoint Security
Webinar: Take Control of SharePoint SecurityWebinar: Take Control of SharePoint Security
Webinar: Take Control of SharePoint SecurityAntonioMaio2
 
Smoking Risk factors
Smoking Risk factors Smoking Risk factors
Smoking Risk factors Aamna Haneef
 
Identity management challenges when moving share point to the cloud antonio...
Identity management challenges when moving share point to the cloud   antonio...Identity management challenges when moving share point to the cloud   antonio...
Identity management challenges when moving share point to the cloud antonio...AntonioMaio2
 
Blackhawk Mines Corp, B06N:BER | Pligg
Blackhawk Mines Corp, B06N:BER  |  PliggBlackhawk Mines Corp, B06N:BER  |  Pligg
Blackhawk Mines Corp, B06N:BER | PliggGenesis Mcklein
 
Poriko muka möhköfantti?
Poriko muka möhköfantti?Poriko muka möhköfantti?
Poriko muka möhköfantti?TimoAro
 
2 q13 arezzo_apresentacao_call eng v2
2 q13 arezzo_apresentacao_call eng v22 q13 arezzo_apresentacao_call eng v2
2 q13 arezzo_apresentacao_call eng v2Arezzori
 
吃得苦中苦, 人上 2003
吃得苦中苦, 人上 2003吃得苦中苦, 人上 2003
吃得苦中苦, 人上 2003Pablo Echeverria
 
Tilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvulla
Tilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvullaTilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvulla
Tilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvullaTimoAro
 
Chapter 03 io csc&tts
Chapter 03 io csc&ttsChapter 03 io csc&tts
Chapter 03 io csc&ttsHisyam Rosly
 

Viewers also liked (19)

Alueiden vetovoima 1880 luvulta 2000-luvulle
Alueiden vetovoima 1880 luvulta 2000-luvulleAlueiden vetovoima 1880 luvulta 2000-luvulle
Alueiden vetovoima 1880 luvulta 2000-luvulle
 
Intellectual Property in Open Innovation Times
Intellectual Property in Open Innovation TimesIntellectual Property in Open Innovation Times
Intellectual Property in Open Innovation Times
 
Alberto Di Minin wwwwwhow social innovation
Alberto Di Minin   wwwwwhow social innovationAlberto Di Minin   wwwwwhow social innovation
Alberto Di Minin wwwwwhow social innovation
 
Information Technology and Firm Profitability - Team Topaz
 Information Technology and Firm Profitability - Team Topaz Information Technology and Firm Profitability - Team Topaz
Information Technology and Firm Profitability - Team Topaz
 
Women and personal finance
Women and personal financeWomen and personal finance
Women and personal finance
 
Poststream - optimising customer communications
Poststream - optimising customer communicationsPoststream - optimising customer communications
Poststream - optimising customer communications
 
2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...
2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...
2011 Canadian Institute - Records Retention - The Indispensable Nitty Gritty ...
 
On ap-lioa-clide
On ap-lioa-clideOn ap-lioa-clide
On ap-lioa-clide
 
Webinar: Take Control of SharePoint Security
Webinar: Take Control of SharePoint SecurityWebinar: Take Control of SharePoint Security
Webinar: Take Control of SharePoint Security
 
Smoking Risk factors
Smoking Risk factors Smoking Risk factors
Smoking Risk factors
 
Identity management challenges when moving share point to the cloud antonio...
Identity management challenges when moving share point to the cloud   antonio...Identity management challenges when moving share point to the cloud   antonio...
Identity management challenges when moving share point to the cloud antonio...
 
Gypsy chic issue 1 es
Gypsy chic issue 1 esGypsy chic issue 1 es
Gypsy chic issue 1 es
 
Blackhawk Mines Corp, B06N:BER | Pligg
Blackhawk Mines Corp, B06N:BER  |  PliggBlackhawk Mines Corp, B06N:BER  |  Pligg
Blackhawk Mines Corp, B06N:BER | Pligg
 
Poriko muka möhköfantti?
Poriko muka möhköfantti?Poriko muka möhköfantti?
Poriko muka möhköfantti?
 
2 q13 arezzo_apresentacao_call eng v2
2 q13 arezzo_apresentacao_call eng v22 q13 arezzo_apresentacao_call eng v2
2 q13 arezzo_apresentacao_call eng v2
 
吃得苦中苦, 人上 2003
吃得苦中苦, 人上 2003吃得苦中苦, 人上 2003
吃得苦中苦, 人上 2003
 
Tilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvulla
Tilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvullaTilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvulla
Tilannekuva Etelä Pohjanmaan väestökehityksestä 2000-luvulla
 
Chapter 03 io csc&tts
Chapter 03 io csc&ttsChapter 03 io csc&tts
Chapter 03 io csc&tts
 
Test slide
Test slideTest slide
Test slide
 

Similar to Chapter1 uml3

บทที่ 6 คลาสและการเขียนโปรแกรม
บทที่ 6 คลาสและการเขียนโปรแกรมบทที่ 6 คลาสและการเขียนโปรแกรม
บทที่ 6 คลาสและการเขียนโปรแกรมNookky Anapat
 
เทคโนโลยี 3 g 5 1
เทคโนโลยี 3 g 5 1เทคโนโลยี 3 g 5 1
เทคโนโลยี 3 g 5 1Saranya Butte
 
โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์Saipanyarangsit School
 
ใบงานที่ 2-8
ใบงานที่ 2-8ใบงานที่ 2-8
ใบงานที่ 2-8Siripassorn
 
ใบงานที่2-8
ใบงานที่2-8ใบงานที่2-8
ใบงานที่2-8noeypornnutcha
 
ขอบข่ายและประเภทโครงงานคอมพิวเตอร์
ขอบข่ายและประเภทโครงงานคอมพิวเตอร์ขอบข่ายและประเภทโครงงานคอมพิวเตอร์
ขอบข่ายและประเภทโครงงานคอมพิวเตอร์miiztake
 
ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์
ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์
ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์Phkphoom
 
โครงงานคอมพิวเตอร์06 09(1)
โครงงานคอมพิวเตอร์06 09(1)โครงงานคอมพิวเตอร์06 09(1)
โครงงานคอมพิวเตอร์06 09(1)adthakron09
 
งานคอม
งานคอมงานคอม
งานคอมCharisma An
 
โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์Fernimagine
 
ใบงานที่ 3
ใบงานที่ 3ใบงานที่ 3
ใบงานที่ 3rohanlathel
 

Similar to Chapter1 uml3 (20)

Class1
Class1Class1
Class1
 
บทที่ 6 คลาสและการเขียนโปรแกรม
บทที่ 6 คลาสและการเขียนโปรแกรมบทที่ 6 คลาสและการเขียนโปรแกรม
บทที่ 6 คลาสและการเขียนโปรแกรม
 
Java 7&12 6 2
Java 7&12 6 2Java 7&12 6 2
Java 7&12 6 2
 
เทคโนโลยี 3 g 5 1
เทคโนโลยี 3 g 5 1เทคโนโลยี 3 g 5 1
เทคโนโลยี 3 g 5 1
 
3
33
3
 
โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์
 
ใบงานที่ 2-8
ใบงานที่ 2-8ใบงานที่ 2-8
ใบงานที่ 2-8
 
ใบงานที่2-8
ใบงานที่2-8ใบงานที่2-8
ใบงานที่2-8
 
ขอบข่ายและประเภทโครงงานคอมพิวเตอร์
ขอบข่ายและประเภทโครงงานคอมพิวเตอร์ขอบข่ายและประเภทโครงงานคอมพิวเตอร์
ขอบข่ายและประเภทโครงงานคอมพิวเตอร์
 
3 120719083921-phpapp01
3 120719083921-phpapp013 120719083921-phpapp01
3 120719083921-phpapp01
 
ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์
ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์
ใบงานที่ 3 ขอบข่ายและประเภทของโครงงานคอมพิวเตอร์
 
แบบร่างโครงงาน
แบบร่างโครงงานแบบร่างโครงงาน
แบบร่างโครงงาน
 
Presentation3
Presentation3Presentation3
Presentation3
 
228-8 /231-9
228-8 /231-9228-8 /231-9
228-8 /231-9
 
001
001001
001
 
โครงงานคอมพิวเตอร์06 09(1)
โครงงานคอมพิวเตอร์06 09(1)โครงงานคอมพิวเตอร์06 09(1)
โครงงานคอมพิวเตอร์06 09(1)
 
งานคอม
งานคอมงานคอม
งานคอม
 
โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์โครงงานคอมพิวเตอร์
โครงงานคอมพิวเตอร์
 
ใบงานที่ 3
ใบงานที่ 3ใบงานที่ 3
ใบงานที่ 3
 
Sdlc
SdlcSdlc
Sdlc
 

More from Man YourJust'one

เมืองแพร่เกมส์
เมืองแพร่เกมส์เมืองแพร่เกมส์
เมืองแพร่เกมส์Man YourJust'one
 
ชื่อกิจกรรม Love shot contest
ชื่อกิจกรรม Love shot contestชื่อกิจกรรม Love shot contest
ชื่อกิจกรรม Love shot contestMan YourJust'one
 
สร ปคำชมเชย+คำแนะนำ
สร ปคำชมเชย+คำแนะนำสร ปคำชมเชย+คำแนะนำ
สร ปคำชมเชย+คำแนะนำMan YourJust'one
 
เกมส์ จับเลขคู่
เกมส์ จับเลขคู่เกมส์ จับเลขคู่
เกมส์ จับเลขคู่Man YourJust'one
 

More from Man YourJust'one (9)

คำถาม
คำถามคำถาม
คำถาม
 
คำถาม
คำถามคำถาม
คำถาม
 
เมืองแพร่เกมส์
เมืองแพร่เกมส์เมืองแพร่เกมส์
เมืองแพร่เกมส์
 
ชื่อกิจกรรม Love shot contest
ชื่อกิจกรรม Love shot contestชื่อกิจกรรม Love shot contest
ชื่อกิจกรรม Love shot contest
 
บทท 12
บทท   12บทท   12
บทท 12
 
บทท 7
บทท  7บทท  7
บทท 7
 
สร ปคำชมเชย+คำแนะนำ
สร ปคำชมเชย+คำแนะนำสร ปคำชมเชย+คำแนะนำ
สร ปคำชมเชย+คำแนะนำ
 
เกมส์ จับเลขคู่
เกมส์ จับเลขคู่เกมส์ จับเลขคู่
เกมส์ จับเลขคู่
 
ซัมซุง
ซัมซุงซัมซุง
ซัมซุง
 

Chapter1 uml3

  • 1. บทที่ 7 วิธ ก ารเชิง วัต ถุ ี และการออกแบบคลาส Srinagarindra The Princess Mother School Kanchanaburi 1
  • 2.  แนวคิด เชิง วัต ถุ(Object Oriented) หมาย ถึง การใช้ Object เป็นตัวหลักในการ พิจารณาความเป็นจริงต่างๆที่เกิดขึ้นในโลก โดยมองทุกสิ่งในโลกเป็นวัตถุทั้งหมด และมอง ว่ากิจกรรมที่เกิดขึ้นในโลกนี้เกิดจากความ สัมพันธ์และปฏิสัมพันธ์ระหว่างวัตถุ 2
  • 3. เปรียบเทียบการวิเคราะห์และออกแบบระบบวิธีเดิมกับวิธีเช วิธ ีเ ดิม วิธ เ ชิง วัต ถุ ี เริ่มต้นจากการวิเคราะห์เอกสาร เริ่มต้นการวิเคราะห์จาก Objects ผลลัพธ์ และการทำางานของ ที่ สามารถเห็นได้ชัดเจน ระบบงานเดิม แตกการทำางานออกเป็นหน่วย แบ่งกลุ่มของ Object ตาม ย่อยๆ คุณลักษณะ องค์ประกอบต่างๆของระบบ เช่น แต่ละ Object เป็นอิสระต่อกัน การประมวลผล การออกรายงาน การเปลี่ยนแปลงจะไม่กระทบกัน การคำานวณ จะเกี่ยวพันกัน การ เปลี่ยนแปลงจะกระทบซึ่งกันและ กัน 3
  • 4. เปรียบเทียบการวิเคราะห์และออกแบบระบบวิธีเดิมกับวิธีเช วิธ ีเ ดิม วิธ เ ชิง วัต ถุ ี การปรับเปลี่ยนระบบต้องแก้ไข การปรับเปลียนระบบ ทำาได้โดย ่ Source Code การเปลี่ยน Attributes, Functions ของ Object Tools ที่สนับสนุนมีน้อยลง Tools ที่สนับสนุนมีมากขึ้น 4
  • 5.  วัตถุ(Object) คือหน่วยสนใจของระบบที่ ทำาให้เกิดเหตุการณ์ วัตถุเป็นได้ทั้งสิงที่สามารถ ่ จับต้องได้ (เช่น โต๊ะ รถยนต์ คอมพิวเตอร์ คน) และวัตถุที่ไม่สามารถจับต้องได้ (เช่น บริษัท ฝ่ายต่างๆ หลักสูตร)  การสื่อสารระหว่าง Object เรียกว่า Message 5
  • 6.  Class คือกลุ่มของ Object ที่มีโครงสร้างพื้น ฐานพฤติกรรมเดียวกัน Object ที่มคุณสมบัติ ี เดียวกัน ก็จะรวมกลุ่มอยู่ใน Class เดียวกัน  Class และ Object มีความคล้ายกันมากจน ทำาให้หลายคนสงสัยว่าเป็นสิงเดียวกันหรือไม่ ่ ในความเป็นจริง Class ถือว่าเป็น นามธรรม (Abstract) ในขณะที่ Object นั้นเป็นสิ่งที่มีตัว ตน (Concrete) กล่าวคือ Class เป็นเหมือน พิมพ์เขียวของ Object โดยที่ Class จะไม่ สามารถทำางานได้ แต่ Object สามารถทำางาน ได้  6
  • 7. Student  Class นอกจากจะมีชอ Class ื่ กำากับแล้ว ยังมี คุณสมบัติ StudentID FirstName (Attributes) และ หน้าที่การ LastName ทำางาน (Operations หรือ Address Methods) Telephone Name Birthdate Faculty Attributes GPA Register() Methods Drop() Withdraw() ตัวอย่าง Class 7 Student
  • 8.  การสืบทอดคุณสมบัติ (Inheritance) คือ การ ที่ Subclass ได้รับการถ่ายทอดคุณสมบัติ (Attributes) มาจาก Superclass แล้วผนวก คุณสมบัติพิเศษเพิ่มเข้าไป Multiple Inheritance  สัญญลักษณ์ที่ใช้ คือ ลูกศรหัวรูปสามเหลี่ยมใส ชีจาก Subclass ไปยัง Superclass ้ 8
  • 10.  หลักของการสืบทอดคุณสมบัติจะทำาให้ความ สัมพันธ์ระหว่าง Object มีความชัดเจนยิ่งขึ้น กล่าวคือถ้ามีความสัมพันธ์ที่ชดเจนมากขึ้น ั เท่าใด จะส่งผลให้การออกแบบระบบงานง่าย ขึ้น  ผู้ออกแบบระบบงานเชิงวัตถุสามารถออกแบบ ระบบงานขนาดใหญ่ได้โดยการอาศัย Object ที่มีการนิยามไว้ก่อนหรือที่มีผอื่นทำาการ ู้ ออกแบบไว้ก่อนแล้ว ซึ่งเป็นที่มาของการนำา กลับมาใช้ใหม่ (Reusability) 10
  • 11. การสืบทอดคุณสมบัติมีข้อดี คือ 1. ทำาให้มโครงสร้างที่เป็นระบบ สามารถปรับ ี เปลี่ยนได้ง่าย 2. ลดเวลาในการพัฒนาระบบ 3. ลดค่าใช้จ่ายในการพัฒนาระบบ 11
  • 12.  Polymorphism คือ การที่ Object ที่ต่างกัน มีปฏิกิริยาตอบสนองต่อ Function/ Message หนึ่งๆในวิธีที่ต่างกัน  Class รูปสีเหลี่ยม กับ Class รูปสามเหลี่ยม ่ ได้รับการสืบทอดคุณสมบัติจาก Class รูป หลายเหลี่ยม โดยทั้งคูมี Function ที่ชื่อ ่ draw() เหมือนกัน แต่เมื่อมีการเรียกใช้ function ดังกล่าว Object ที่สร้างจาก Class รูปสี่เหลี่ยมจะมีการวาดรูปสี่เหลี่ยม ขณะที่ Object ที่สร้างจาก Class รูปสามเหลี่ยมจะมี การวาดรูปสามเหลี่ยม 12
  • 13. • หลักการ Polymorphism ช่วยให้สามารถนำา code กลับมาใช้ใหม่ ได้ เนื่องจากสามารถ กำาหนดชุดคำาสั่งทั่วไป และมอบหน้าที่ราย ละเอียดของการนำาไป ใช้แก่ Object ที่ เกี่ยวข้องจัดการ 13
  • 14.  การซ่อนรายละเอียดเป็นพื้นฐานของการปกปิด ข้อมูลภายในและวิธีการทำางานของ Object  ตามแนวคิดเชิงวัตถุ การจะล่วงรู้รายละเอียดข้อมูล ของ Object จะต้องได้รับอนุญาตจากเจ้าของ Object นันก่อน กล่าวคือการเข้าถึงข้อมูลนั้น จะ ้ ไม่สามารถเข้าถึงได้โดยตรง แต่จะต้องมีการตอบ รับจาก Method ใน Object ปลายทางนั้นว่าจะ ยอมให้ Object ทีส่ง Message เข้าถึงข้อมูลของ ่ ตนหรือไม่  Encapsulation หมายถึง ลักษณะการเขียน โปรแกรมทีจะมีการซ่อนข้อมูลทีต้องการควบคุม ่ ่ 14
  • 15.  กลไกการปกป้องกันข้อมูลและวิธีการทำางาน ของ Object สามารถเป็น  Public (+) ซึ่งสามารถเข้าถึงได้โดยตรงจาก ภายนอก  Private (#) ซึ่งจะถูกใช้งานจากภายใน Class เท่านั้น  Protected (-) ซึ่งจะสามารถเห็นหรือเข้าถึงได้ จากภายใน Subclass เท่านั้น 15
  • 16.  เป็นความสัมพันธ์ระหว่าง Object หรือ Class แบบ 2 ทิศทาง 16
  • 17.  เป็นความสัมพันธ์ระหว่าง Object หรือ Class แบบ “Whole-Part” หรือ “is part of” โดยจะ มี Class ที่ใหญ่ที่สุดที่เป็น Object หลัก และมี Class อื่นเป็นส่วนประกอบ 17
  • 18.  เป็นความสัมพันธ์ ระหว่าง Object หรือ Class แบบขึ้นต่อกัน และมีความเกี่ยวข้องกัน เสมอ โดยจะมี Class ซึ่งเป็นองค์ประกอบของ Class อื่นที่ใหญ่กว่า  เมื่อ Class ที่ใหญ่กว่า ถูกทำาลาย Class ที่ เป็นองค์ประกอบก็จะถูก ทำาลายไปด้วย 18
  • 19.  เป็นความสัมพันธ์ ระหว่าง Object หรือ Class ในลักษณะ ของการสืบทอด คุณสมบัติจาก Class หนึ่ง (Superclass) ไปยังอีก Class หนึ่ง (Subclass) 19
  • 20. บทที่ 12 การเขีย นโปรแกรม โดยใช้ NetBeans Srinagarindra The Princess Mother School Kanchanaburi 20
  • 21.  NetBeans IDE  เป็น Freeware Editor อีก ตัวหนึ่ง ซึ่งได้รับความนิยมในการใช้พัฒนา โปรแกรมโดย NetBeans นั้นสนับสนุนการ พัฒนาโปรแกรมในหลายภาษา เช่นJava, php, C/C++ นอกจากนี้เรายัง สามารถ download PlugIn ต่างๆมาใช้งาน ร่วมกับตัว NetBeans เองด้วย ยกตัวอย่าง เช่น iReport เป็น Plugin ที่ใช้ในการ สร้างreport หรือ Visual Web Page Layouts ใช้ในการแสดงตัวอย่างหน้า web 21
  • 22. ก่อนที่จะเริ่มใช้งาน NetBeans เราสามารถ download ตัว โปรแกรม NetBeans ได้ที่ http://netbeans.org/downloads/index.html  โดย NetBeans นั้นมีหลายversion หลาย Platform เรา สามารถเลือกภาษา Platform และ version ได้ตามความ เหมาะสมเลยครับ   เมื่อทำาการ download มาแล้วจะได้เป็น .exe file ซึ่งเรา สามารถทำาการติดตั้งโปรแกรมไปยัง directory ที่ต้องการจะ ทำาการติดตั้งได้เลย หลังจากติดตั้งโปรแกรมเสร็จสมบูรณ์แล้ว เราสามามารถเข้าโปรแกรม NetBeans ได้จาก หน้า desktop   22
  • 23.  เมื่อทำาการ download มาแล้วจะได้ เป็น .exe file ซึ่งเราสามารถทำาการติดตั้ง โปรแกรมไปยัง directory ที่ต้องการจะทำาการ ติดตั้งได้เลย หลังจากติดตั้งโปรแกรมเสร็จ สมบูรณ์แล้ว เราสามามารถเข้า โปรแกรม NetBeans ได้จากหน้า desktop   23
  • 24. ในที่นี้เราจะทำาการพัฒนาโปรแกรมด้วยภาษา JAVA เพราะ ฉะนั้นจะต้องทำาการdownload ตัว JDK หรือ Java Development  Kit เสียก่อน สามารถ downloadได้ที่ http://www.oracle.com/technetwork/java/javase/downloads/index  เมื่อ download JDK แล้วก็ต้องทำาการ Set class path เพื่อให้ สามารถ Compileและ Run Java ได้ โดยวิธทำาสามารถติดตาม ี ได้จาก Link ด้านล่างเลยครับ http://archive.oracle.in.th/2008/02/set-path-class-path-j2 se-dos.htmlหรือ http://www.dominixz.com/blog/software-tips/set-java-to-compile 24
  • 26.  เป็นส่วนของแถบเมนู และ Tool ต่างๆ  เป็นส่วนที่แสดงและจัดการ Project ต่างๆ เหมือน เป็นการ Browse ดู Projectหรือ File ต่างๆ  เป็นส่วนที่ใช้ในการเขียน Code  เป็นส่วนที่ใช้ในการแสดงผลการทำางานต่าง เมื่อทำาการ Run โปรแกรม และยังมีสวนของ ่ การ debug โปรแกรมด้วย 26
  • 27.  เมื่อรู้จักหน้าตาหรือ GUI แบบคร่าวๆ ของ NetBeans กันแล้วต่อไปก็มาลองเขียน โปรแกรมง่ายกันครับ โดยเริ่มจากการ New Project ใหม่ขึ้นมา โดยการเลือกที่ File >> New Project 27
  • 28.  จะมีหน้าต่างขึ้นมาให้เราเลือก โดยให้เรา ทำาการเลือก Java และ Java Applicationแล้ว กด Next 28
  • 29.  จากนั้นจะมีหน้าต่างให้กำาหนดค่ารายละเอียดต่างๆ ของ Project  โดยจะบังคับให้ใส่Project Name ในที่นี้จะ ตั้งชือ Project ว่า NetBeansTutorial และชือ Main ่ ่ Class ว่า MainClass เมื่อกำาหนดค่ารายละเอียดต่างๆแล้ว กด Finish  เราจะได้ Project ที่ชื่อ ว่า NetBeansTutorial และ File ชื่อ MainClass.java ขึ้ นมา  ต่อไปเราจะลองสร้าง class TestObj ขึ้นมา เพื่อลอง ใช้ Funtion บางอย่างของNetBeans ครับ  โดยการสร้าง class ใหม่นั้น เราสามารถทำาได้โดย คลิกขวา ที่ชื่อ Project แล้วเลือกNew >> Java Class ดังภาพ 29
  • 30. หลังจากนั้นจะปรากฏหน้าต่างขึ้นมาให้กำาหนดรายละเอียด โดยให้ตั้ง ชื่อ Class ว่าTestObj แล้วกด Finish ภายใน class TestObj จะ มี code ดังนี้ครับ  public class TestObj {  private String firstName;  private String lastName;  public void showName() {  System.out.println("THIS IS METHOD showName()");  System.out.println("My name is "+firstName+" "+lastName);  }  } 30
  • 31.  จะเห็นได้ว่า Attribute ใน Class TestObj เป็น private ฉะนันก็จะต้องมี Getter ้ and Setter เราสามารถที่จะสั่ง ให้ NetBeans สร้าง Getter and Setter จากAttribute ทีมีอยู่ได้โดยการคลิกขวา ่ ที่หน้าจอที่ใช้เขียน code แล้วเลือก Insert Codeจะปรากฏหน้าต่างขึ้นมาให้เลือกที่  Getter and Setter  หน้าต่างสำาหรับการ Generate Getters and Setters จะขึ้นมา ให้เราทำาการเลือกว่าจะ สร้าง Getters and Setters ให้ 31
  • 32. เราจะได้ code ของ class TestObj ดังนี้       public void setFirst  public class TestObj { Name(String firstName)        private String firstName; {        private String lastName;             this.firstName         = firstName;        public void showName() {       }                System.out.println("THIS IS METHOD showName()");        public String             System.out.println("My name is "+firstName+" "+lastName); getLastName() {        }             return lastNam    e;        public String getFirstName() {       }              return firstName;          }       public void setLast    Name(String lastName) { 32             this.lastName =
  • 33. นอกจากการ Generate Getters and Setters แล้ว เราสามารถคลิกขวา เพื่อดูFunction อื่นๆที่ NetBeans สามารถช่วยจัดการให้การทำางานของ เราง่ายขึ้นครับ     เมื่อได้ class TestObj แล้ว ต่อไปเราก็ทำาการ แก้ไข code ของ MainClass ให้เป็นดังนี้  public class MainClass {        public static void main(String[] args) {              TestObj temp = new TestObj();              temp.setFirstName("Itthi");              temp.setLastName("Kruenarongkul");              temp.showName();                           temp.setFirstName("Monthinee");              temp.setLastName("Buntawee");              temp.showName(); 33
  • 34.  ในการ code คำาสังต่างๆ เราสามารถกด CTRL ่ +SpaceBar เพื่อเรียกดูได้ว่าสามารถใช้ method หรือ เรียก Attribute ใดมาใช้ได้บ้าง หรือบางที NetBeans ก็ จะขึ้นส่วนนี้มาให้เอง   เมื่อทำาการแก้ไข Code เสร็จเรียบร้อย เราจะลอง ทำาการ Run โปรแกรมนี้ดู โดยการกดปุมสีเขียวที่อยูดานล่าง ่ ่ ้ แถบเมนู 34
  • 35. โดย  NetBeans จะทำาการ Save ให้อัตโนมัติทุกครั้งที่จะ ทำาการ Run ถ้า NetBeansทำาการ compile แล้วไม่ พบ error โปรแกรมจะแสดงผลที่สวนด้านล่างดังภาพ ่ 35