āļšāļ—āļ—āļĩāđˆ 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

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
  • 9.
  • 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
  • 25.
  • 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