SlideShare a Scribd company logo
1 of 29
Download to read offline
ความหมายของโอโอพี
การเขียนโปรแกรมเชิงวัตถุ (อังกฤษ: Object-
oriented programming, OOP) คือหนึ่งใน
รูปแบบการเขียนโปรแกรมคอมพิวเตอร์ ที่ให้ความสาคัญกับ วัตถุ ซึ่ง
สามารถนามาประกอบกันและนามาทางานรวมกันได้ โดยการ
แลกเปลี่ยนข่าวสารเพื่อนามาประมวลผลและส่งข่าวสารที่ได้ไปให้ วัตถุ
อื่นๆที่เกี่ยวข้องเพื่อให้ทางานต่อไป
คลาสและออบเจ็กต์
• การเขียน program แบบ OOP มีลักษณะ 5 ประการ
1) ทุกสิ่งทุกอย่างคือ object
ในแง่หนึ่งเราก็อาจตีความว่า object เป็นตัวแปรที่มีความพิเศษอยู่ในตัวเอง คือ นอกจาก
เก็บค่าต่าง ๆ ได้แล้ว เรายังสามารถที่จะสั่ง (request) ให้ object ทางาน
(operation) ต่าง ๆ ที่เกี่ยวกับตัวมันเองด้วย
2) Program ประกอบไปด้วย object ที่ต่างก็ส่งข้อความ (message) บอก
ให้กันและกันว่าต้องทาอะไร
การส่ง message ก็คือการส่ง request หรือการเรียกใช้ function ของ
object นั้น ๆ
3) Object แต่ละตัวมีหน่วยความจาที่เต็มไปด้วย object อื่น ๆเราสร้าง object
จาก object ตัวอื่นที่มีอยู่แล้ว
4) Object มี รูปแบบ หรือ ชนิด ของตัวเอง (type/class)
5) Object ที่ต้นตอมาจาก type แบบเดียวกันสามารถที่จะรับข้อมูลซึ่งกันและกันได้
1. OBJECT
• – Object คือ สิ่งที่มีคุณสมบัติและพฤติกรรมตามที่กาหนดไว้ในคลาส
• – ออบเจ็กต์(object) แบ่งได้เป็นสองประเภท คือ
1) สิ่งที่เป็นรูปธรรม (tangible) คือสิ่งที่เป็นวัตถุและจับต้องได้อาทิ
เช่น นักศึกษา ปากกา และรถ เป็นต้น
2) สิ่งที่เป็นนามธรรม (intangible) คือสิ่งที่ไม่สามารถจับต้องได้อาทิ
เช่น คะแนนรายชื่อวิชา การลงทะเบียน การฝาก-ถอนเงิน และตารางเที่ยวบิน เป็น
ต้น
• 1) คุณลักษณะ (attribute) หรือข้อมูล (data)
2) เมธอด (method) หรือพฤติกรรม (behavior)
3) คุณลักษณะ (attribute) หรือข้อมูล (data) ข้อมูลของ Object แต่ละ Object
อาจมีข้อมูลที่แตกต่างกัน
4) เมธอด (method) หรือพฤติกรรม (behavior) สิ่งที่ Object สามารถกระทาได้
• ตัวอย่าง ออบเจ็กต์ คือ
– นักศึกษา
ประกอบไปด้วยคุณลักษณะเช่น รหัส ชื่อ และเกรดเฉลี่ย
มีเมธอดเช่น ลงทะเบียน การสอบ และการเรียน
– รถยนต์
ประกอบไปด้วยคุณลักษณะเช่น ยี่ห้อ รุ่น และสี
มีเมธอดเช่น เคลื่อนที่ หยุดและเลี้ยว
– สุนัข
ประกอบไปด้วยคุณลักษณะเช่น ชื่อ พันธุ์ และสี
มีเมธอดเช่น เห่า คลาน และกระดิกหาง
2. CLASS
– Class หมายถึงโครงสร้างของ object โดย class เป็นตัวกาหนดว่า object นั้น
จะมี data หรือคุณลักษณะอะไร บ้าง และมี method อะไรบ้าง เปรียบเสมือนพิมพ์เขียว
(template) ของออปเจ็ค
– ออปเจ็คที่ถูกสร้างมาจากคลาส (class) บางครั้งเรียกว่าเป็น instance ของคลาส
คลาสหนึ่งคลาสสามารถสร้างออปเจ็คได้หลายออปเจ็ค
– Object นั้นจะถูกสร้างขึ้นตามกระบวนการทางานของ JVM โดยที่นักพัฒนาจะต้อง
นิยาม Class ที่ต้องการให้กับ JVM
ตัวอย่าง คลาส เช่น
คลาส Student อาจสร้างออปเจ็ค s1,s2 หรือ s3 ซึ่งเป็นออปเจ็คของคลาส Student
ตัวอย่าง คลาส และ ออบเจ็กต์
STATIC
STATIC
• ตัวแปรและเมท็อดที่เป็น static
• คีย์เวิร์ด static เป็นคีย์เวิร์ดที่ใช้ประกาศหน้าตัวแปรและเมท็อด ความพิเศษ
ของ static คือว่าโดยปกติเวลาจะสร้างอ็อปเจ็คต้องทาการ new อ็อปเจ็ค
ขึ้นมา ตัวแปรอ็อปเจ็คก็จะอ้างอิงไปที่อ็อปเจ็คที่สร้างขึ้น แล้วก็เอาตัวแปรนี้ไป
เรียกใช้ตัวแปร ใช้เมท็อด แต่ถ้าตัวแปรหรือเมท็อดนั้นเป็น static ก็จะทาให้
สามารถใช้ตัวแปรหรือเมท็อดนั้นได้เลยโดยไม่ต้องสร้างอ็อปเจ็คมาเรียกใช้งาน
• สาหรับตัวแปรที่เป็น static นั้น จะทาให้ตัวแปรนั้นเป็นตัวแปรของคลาส
ไม่ได้เป็นของอ็อปเจ็คใดอ็อปเจ็คหนึ่ง ถ้ามีการเปลี่ยนแปลงขึ้นกับตัวแปร
static อ็อปเจ็คอื่นๆทั้งหมดจะมองเห็นการเปลี่ยนแปลง
วิธีประกาศ
• สาหรับตัวแปร modifier static ชนิดตัวแปร ชื่อตัวแปร ;
• สาหรับเมท็อด modifier static ประเภทผลลัพธ์ ชื่อเมท็อด( ) { }
• วิธีการเรียกใช้งานเมท็อดที่เป็น static ถ้าอยู่ในคลาสเดียวกันก็ ชื่อ เมท็
อด(); แบบนี้ได้เลย แต่ถ้าอยู่คนละคลาสก็ ใช่ ชื่อคลาส.ชื่อเมท็อด static
• เมท็อดที่เป็น static ที่ได้ใช้มาแล้วก็คือ เมท็อด main ใน public
static void main(String [] args) เพราะว่า main เป็น
เมท็อดสาหรับเริ่มทางาน ดังนั้นต้องสามารถทางานได้เลยโดยไม่ต้องมีอ็อปเจ็ค
มาเรียกใช้งาน
เมท็อดชื่อ F ในบรรทัดที่ 17 ประกาศเป็น เมท็อด STATIC ดังนั้นในบรรทัดที่
12 สามารถเรียกใช้เมท็อด F ได้เลย แต่บรรทัดที่ 13 มีการเรียกใช้เมท็อด
PRINTLN ซึ่งอยู่ในคลาส SYSTEM ก็ต้องใช้งานแบบ ชื่อคลาส.เมท็อด
สังเกตว่าเมื่อเอาคาว่า STATIC ออกในบรรทัดที่
17 จะเกิด ERROR ขึ้นทันทีที่บรรทัดที่ 12 ที่เรียกเมท็อด
ตัวแปร เมท็อดและคลาสที่เป็น FINAL
• คล้ายกับ static คีย์เวิร์ด final ใช้ประกาศหน้าตัวแปร เมท็อดและยัง
ประกาศหน้าคลาสได้ด้วย
- ถ้า final ไปประกาศหน้าตัวแปร ตัวแปรนั้นจะมีค่านั้นตลอดเปลี่ยนแปลง
ไม่ได้เรียกว่าเป็นค่าคงที่
- ถ้าอยู่หน้าเมท็อดแล้วคลาสนี้ถูกสืบคุณสมบัติไป เมท็อดนี้จะไม่สามารถ
เขียนทับแก้ไขได้หรือก็คือไม่สามารถ Overriding ได้
- แต่ถ้าอยู่คลาส คลาสนั้นๆจะไม่สามารถเป็นคลาสแม่ได้เลย คือบางทีไม่
ต้องการให้คนเอาอะไรเปลี่ยนทั้งนั้นก็ประกาศคลาสเป็น final เพราะบางที
ประกาศเมท็อดเป็น final คลาสลูกก็เขียนเมท็อดใหม่ขึ้นมาได้เช่น เราไม่
ต้องการเขาเปลี่ยนชื่อ เขาก็เขียนเมท็อดสาหรับเปลี่ยนชื่อใหม่ได้
วิธีประกาศ
• สาหรับตัวแปร final ชนิดตัวแปร ชื่อตัวแปร = ค่าคงที่ ;
• สาหรับเมท็อด modifier final ประเภทผลลัพธ์ ชื่อเมท็อด( ) { }
• สาหรับคลาส modifier final class ชื่อคลาส{ }
CONSTRUCTORS
CONSTRUCTORS
Constructors เป็นฟังก์ชันในคลาสที่จะถูกเรียกอัตโนมัติเมื่อเราสร้างอ็อบเจ็คให้กับ
คลาสนั้น ๆ ด้วยคาสั่ง new ซึ่งมันจะเป็นฟังก์ชัน Constructors ได้ก็ต่อเมื่อชื่อ
ของมันเหมือนชื่อคลาส ถ้าภายในคลาสไม่มี constructor ดังนั้นมันจะทาการเรียก
constructure ของ base class (ถ้ามันมี) เช่น
<?php
class Auto_Cart extends Cart {
function Auto_Cart() {
$this->add_item("10", 1);
}
}
?>
• Constructors function นั้นสามารถรับค่าพารามิเตอร์ได้เช่นกัน ดังนี้
<?php
class Constructor_Cart extends Cart {
function Constructor_Cart($item = "10", $num
= 1) {
$this->add_item($item, $num);
}
}
การส่งออบเจ็กต์ไปยังเมท็อด
• ในการเขียนโปรแกรมที่มีการสร้างคลาสขึ้นมาหลายๆคลาสนั้น
ออบเจ็กต์ของคลาสหนึ่งสามารถใช้เป็นอาร์กิวเมนต์เพื่อส่งผ่านไปยังเมธ
อดของคลาสอีกคลาสหนึ่งได้
• เช่นโปรแกรม Student.Java เป็นโปรแกรมคลาสสาหรับเก็บ
ข้อมูลนักเรียน ได้แก่ ซื่อและอีเมลล์โดยมีเมท็อดสาหรับกาหนดและ
เรียกดูชื่อและอีเมลล์สาหรับใช้งาน
public class Student3 {
private String name;
private String email;
public Student3() {
name = "Unassigned";
email = "Unassigned";
}
public String getEmail(){
return email;
}
public String getName(){
return name;
}
public void setEmail(String address){
email = address;
}
public void setName(String
studentName){
name = studentName;
}
}
ตัวอย่างการประยุกต์การเขียนโปรแกรมเชิงวัตถุ
• เป็นการออกแบบคลาสแล้วนามาเขียนโปรแกรมประยุกต์
สาหรับใช้งานจริง โดยอธิบายขั้นตอนสาคัญในการทางานแต่ละขั้นตอน
โดยมีโปรแกรมตัวอย่างการเขียนโปรแกรมสาหรับเข้ารหัสข้อมูลโดยส่ง
ข้อมูลผ่านเข้าไปในเครือข่ายคอมพิวเตอร์ เพื่อความปลอดภัยได้นา
เทคโนโลยีการเข้ารหัสมาใช้ ทาโดยการเลื่อนข้อมูล แต่ถ้าเป็นตัวอักขระ
ตัวสุดท้ายของภาษาอังกฤษการเลื่อนข้อมูลจะกลับมาเริ่มต้นที่ตัวแรกใหม่
ถ้าหากเป็น 2-shift ข้อมูลจะแทนได้ดังนี้
A แทนด้วย C
B แทนด้วย D
Y แทนด้วย A
Z แทนด้วย B
ถ้าข้อมูลต้นฉบับเป็น “DIZZY” แล้วเข้ารหัสแบบ 2-
shift ข้อมูลที่เข้ารหัสแล้วจะเป็น “FKBBA”
ตัวอย่างการประยุกต์การเขียนโปรแกรมเชิงวัตถุ
อธิบายการทางานของโปรแกรม
1.หากพิมพ์คาว่า Teerawut ลงไป จะทาให้ตัวแปร message ชี้ไปยัง
ออบเจ็กต์สตริง “Teerawut”
2.ต่อมาถ้าหากกดคีย์ตัวเลข 5 ลงไป จะทาให้ตัวแปร shift มีค่าเป็น 5
3.เมื่อโปรแกรมเรียกใช้เมท็อด encrypt จะทาให้ msg ซึ่งเป็นพารามิเตอร์ของ
เมท็อดชี้ไปยังออบเจ็กต์เดียวกับ message และพารามิเตอร์ shift มีค่าเป็น 5
เช่นกัน
4.เมื่อเมท็อด encrypt ทางาน ทาให้ตัวแปร encrypted
Message ชี้ไปยังหน่อยความจาออบเจ็กต์สตริงที่สร้างขึ้นมาใหม่
5.จากนั้นจะทาให้ตัวแปร msg ชี้ไปยังสตริงชุดใหม่ที่ผ่านการเข้ารหัสแล้ว
6.หลังจากนั้นจะให้ encryptedMessage มีค่าสตริงที่เข้ารหัสแล้ว
ตัวอย่างโปรแกรม จะแสดงการสร้างคลาสของการนาตัวอักขระ []
มาสร้างเป็นรูปสามเหลี่ยม โดยการสร้างคลาสสามารถทาได้
ดังต่อไปนี้
1.สร้างโปรเจ็กต์ใหม่
2.สร้างคลาสใหม่ โดยเลือกเมนู New>Class
3.กาหนดชื่อคลาส แล้วกด Next
4.โปรแกรมจะแสดงคลาสใหม่ขึ้นมา
5.จากนั้นให้เติมโค้ด แล้วรันโปรแกรม
สถานีสอนเขียนโปรแกรมอัจฉริยะ.การเขียนโปรแกรมเชิงวัตถุ.(ออนไลน์).
แหล่งที่มา : http://blogwitt.tumblr.com/post /93188547255/101 static.
๒๔ พฤศจิกายน ๒๕๕๘
ณรงค์เดช บุญพุ่มพวงและคณะ.การเขียน program เชิงวัตถุ.(ออนไลน์).
แหล่งที่มา : https://phuengkun1.wordpress.com คลาสและออบเจ็กต์ .
๒๔ พฤศจิกายน ๒๕๕๘
ทีมงานวิกิพีเดีย.(ออนไลน์). แหล่งที่มา : https://th.wikipedia.org/wiki/
ความหมายของโอโอพี . ๒๔ พฤศจิกายน ๒๕๕๘
นางสาวไอรินทร์ นิธิภัทร์พรปัญญา เลขที่ 14
นางสาวปณิดา ธนกิจ เลขที่ 15
นางสาวลาภิศ อุทาทิพย์ เลขที่ 18
นางสาวกุลยา จันทรสูตร เลขที่ 21
นางสาวฉัตรชนก หงษาวดี เลขที่ 23
นางสาวธนัณญา เหลืองกัลยาณคุณ เลขที่ 24
นางสาวสิรีธร ขวัญอ่อน เลขที่ 29
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น2

More Related Content

What's hot

คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นParn Nichakorn
 
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์Thanachart Numnonda
 
Java Programming: หลักการเชิงอ็อบเจกต์
Java Programming: หลักการเชิงอ็อบเจกต์Java Programming: หลักการเชิงอ็อบเจกต์
Java Programming: หลักการเชิงอ็อบเจกต์Thanachart Numnonda
 
Java Programming [12/12] : Thread
Java Programming [12/12] : ThreadJava Programming [12/12] : Thread
Java Programming [12/12] : ThreadIMC Institute
 
ความรู้พื้นฐานเกี่ยวกับภาษา PHP
ความรู้พื้นฐานเกี่ยวกับภาษา PHPความรู้พื้นฐานเกี่ยวกับภาษา PHP
ความรู้พื้นฐานเกี่ยวกับภาษา PHPKhon Kaen University
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นPornsitaintharak
 
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]Khon Kaen University
 
ความรู้เบื้องต้นภาษาจาวา
ความรู้เบื้องต้นภาษาจาวาความรู้เบื้องต้นภาษาจาวา
ความรู้เบื้องต้นภาษาจาวาThanachart Numnonda
 
บทที่ 2 ตัวแปร
บทที่ 2 ตัวแปรบทที่ 2 ตัวแปร
บทที่ 2 ตัวแปรKomkai Pawuttanon
 
คลาสและโปรแกรม
คลาสและโปรแกรมคลาสและโปรแกรม
คลาสและโปรแกรมN'Name Phuthiphong
 
Java Programming: อะเรย์และคอลเล็กชั่น
Java Programming: อะเรย์และคอลเล็กชั่นJava Programming: อะเรย์และคอลเล็กชั่น
Java Programming: อะเรย์และคอลเล็กชั่นThanachart Numnonda
 
การประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซีการประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซีmycomc55
 

What's hot (20)

บทที่ 8 Methods
บทที่ 8 Methodsบทที่ 8 Methods
บทที่ 8 Methods
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
METHODS
METHODSMETHODS
METHODS
 
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์
 
Java Programming: หลักการเชิงอ็อบเจกต์
Java Programming: หลักการเชิงอ็อบเจกต์Java Programming: หลักการเชิงอ็อบเจกต์
Java Programming: หลักการเชิงอ็อบเจกต์
 
Java Programming [12/12] : Thread
Java Programming [12/12] : ThreadJava Programming [12/12] : Thread
Java Programming [12/12] : Thread
 
ตัวแปรและคำสงวน
ตัวแปรและคำสงวนตัวแปรและคำสงวน
ตัวแปรและคำสงวน
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1
 
ความรู้พื้นฐานเกี่ยวกับภาษา PHP
ความรู้พื้นฐานเกี่ยวกับภาษา PHPความรู้พื้นฐานเกี่ยวกับภาษา PHP
ความรู้พื้นฐานเกี่ยวกับภาษา PHP
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
 
ความรู้เบื้องต้นภาษาจาวา
ความรู้เบื้องต้นภาษาจาวาความรู้เบื้องต้นภาษาจาวา
ความรู้เบื้องต้นภาษาจาวา
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
 
4563456
45634564563456
4563456
 
บทที่ 2 ตัวแปร
บทที่ 2 ตัวแปรบทที่ 2 ตัวแปร
บทที่ 2 ตัวแปร
 
Vb6 5 ข้อมูลและตัวแปร
Vb6 5 ข้อมูลและตัวแปร Vb6 5 ข้อมูลและตัวแปร
Vb6 5 ข้อมูลและตัวแปร
 
คลาสและโปรแกรม
คลาสและโปรแกรมคลาสและโปรแกรม
คลาสและโปรแกรม
 
Java Programming: อะเรย์และคอลเล็กชั่น
Java Programming: อะเรย์และคอลเล็กชั่นJava Programming: อะเรย์และคอลเล็กชั่น
Java Programming: อะเรย์และคอลเล็กชั่น
 
ภาษา C#
ภาษา C#ภาษา C#
ภาษา C#
 
การประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซีการประกาศตัวแปรในภาษาซี
การประกาศตัวแปรในภาษาซี
 

Similar to คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น2

คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น Ja Phenpitcha
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1Ja Phenpitcha
 
ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1
ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1
ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1Little Tukta Lita
 
Pbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้นPbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้นDararat Worasut
 
ความหมายของโปรแกรมคอมพิวเตอร์
ความหมายของโปรแกรมคอมพิวเตอร์ความหมายของโปรแกรมคอมพิวเตอร์
ความหมายของโปรแกรมคอมพิวเตอร์Onrutai Intanin
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาAeew Autaporn
 
อยากเขียนโปรแกรมสักตัว เล่ม 1
อยากเขียนโปรแกรมสักตัว เล่ม 1อยากเขียนโปรแกรมสักตัว เล่ม 1
อยากเขียนโปรแกรมสักตัว เล่ม 1Thinnakrit Knoo-Aksorn
 
โครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซีโครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซีณัฐพล บัวพันธ์
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2winewic199
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2winewic199
 
การพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญาการพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญาwinewic199
 
ใบความรู้ที่ 4
ใบความรู้ที่ 4ใบความรู้ที่ 4
ใบความรู้ที่ 4Rattana Wongphu-nga
 

Similar to คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น2 (20)

คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น 1
 
ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1
ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1
ฟังก์ชั่นย่อยและโปรแกรมมาตรฐาน ม.6.1
 
Pbl2 docx
Pbl2 docxPbl2 docx
Pbl2 docx
 
Pbl2 docx
Pbl2 docxPbl2 docx
Pbl2 docx
 
Pbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้นPbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้น
 
Php beginner
Php beginnerPhp beginner
Php beginner
 
ภาษาซี
ภาษาซีภาษาซี
ภาษาซี
 
ความหมายของโปรแกรมคอมพิวเตอร์
ความหมายของโปรแกรมคอมพิวเตอร์ความหมายของโปรแกรมคอมพิวเตอร์
ความหมายของโปรแกรมคอมพิวเตอร์
 
Presentation1
Presentation1Presentation1
Presentation1
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวา
 
Pbl2
Pbl2Pbl2
Pbl2
 
อยากเขียนโปรแกรมสักตัว เล่ม 1
อยากเขียนโปรแกรมสักตัว เล่ม 1อยากเขียนโปรแกรมสักตัว เล่ม 1
อยากเขียนโปรแกรมสักตัว เล่ม 1
 
โครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซีโครงสร้างของโปรแกรมภาษาซี
โครงสร้างของโปรแกรมภาษาซี
 
Java 7&12 6 2
Java 7&12 6 2Java 7&12 6 2
Java 7&12 6 2
 
งานทำBlog บทที่ 10
งานทำBlog บทที่ 10งานทำBlog บทที่ 10
งานทำBlog บทที่ 10
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
 
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
การพัฒนาโปรแกรม วิชญา เลขที่ 26.2
 
การพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญาการพัฒนาโปรแกรม วิชญา
การพัฒนาโปรแกรม วิชญา
 
ใบความรู้ที่ 4
ใบความรู้ที่ 4ใบความรู้ที่ 4
ใบความรู้ที่ 4
 

More from Iam Champooh

Ulo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรัก
Ulo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรักUlo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรัก
Ulo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรักIam Champooh
 
พร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้ว
พร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้วพร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้ว
พร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้วIam Champooh
 
โครงการ จิตอาสาพัฒนาวัดบ้านเรา
โครงการ จิตอาสาพัฒนาวัดบ้านเราโครงการ จิตอาสาพัฒนาวัดบ้านเรา
โครงการ จิตอาสาพัฒนาวัดบ้านเราIam Champooh
 
ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)
ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)
ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)Iam Champooh
 
IS โครงการจิตอาสาพัฒนาวัดบ้านเรา
IS โครงการจิตอาสาพัฒนาวัดบ้านเราIS โครงการจิตอาสาพัฒนาวัดบ้านเรา
IS โครงการจิตอาสาพัฒนาวัดบ้านเราIam Champooh
 
PPT โครงการ จิตอาสาพัฒนาวัดบ้านเรา
PPT โครงการ จิตอาสาพัฒนาวัดบ้านเราPPT โครงการ จิตอาสาพัฒนาวัดบ้านเรา
PPT โครงการ จิตอาสาพัฒนาวัดบ้านเราIam Champooh
 
โครงการจิตอาสาพัฒนาวัดบ้านเรา
โครงการจิตอาสาพัฒนาวัดบ้านเราโครงการจิตอาสาพัฒนาวัดบ้านเรา
โครงการจิตอาสาพัฒนาวัดบ้านเราIam Champooh
 
บทที่ 3-วิธีการดำเนินงาน
บทที่ 3-วิธีการดำเนินงานบทที่ 3-วิธีการดำเนินงาน
บทที่ 3-วิธีการดำเนินงานIam Champooh
 
บทที่ 2-เอกสารที่เกี่ยวข้อง
บทที่ 2-เอกสารที่เกี่ยวข้องบทที่ 2-เอกสารที่เกี่ยวข้อง
บทที่ 2-เอกสารที่เกี่ยวข้องIam Champooh
 
โครงการ Is3
โครงการ Is3โครงการ Is3
โครงการ Is3Iam Champooh
 
ทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญาทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญาIam Champooh
 
ทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญาทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญาIam Champooh
 
ผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้น
ผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้นผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้น
ผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้นIam Champooh
 

More from Iam Champooh (15)

Ulo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรัก
Ulo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรักUlo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรัก
Ulo กล้องวงจรปิดนกฮูก ที่คุณจะต้องตกหลุมรัก
 
พร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้ว
พร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้วพร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้ว
พร้อมหรือยัง เครื่องซักผ้าอัจฉริยะ กำลังจะบุกบ้านคุณแล้ว
 
โครงการ จิตอาสาพัฒนาวัดบ้านเรา
โครงการ จิตอาสาพัฒนาวัดบ้านเราโครงการ จิตอาสาพัฒนาวัดบ้านเรา
โครงการ จิตอาสาพัฒนาวัดบ้านเรา
 
ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)
ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)
ISโครงการจิตอาสาพัฒนาวัดบ้านเรา(ใหม่)
 
IS โครงการจิตอาสาพัฒนาวัดบ้านเรา
IS โครงการจิตอาสาพัฒนาวัดบ้านเราIS โครงการจิตอาสาพัฒนาวัดบ้านเรา
IS โครงการจิตอาสาพัฒนาวัดบ้านเรา
 
PPT โครงการ จิตอาสาพัฒนาวัดบ้านเรา
PPT โครงการ จิตอาสาพัฒนาวัดบ้านเราPPT โครงการ จิตอาสาพัฒนาวัดบ้านเรา
PPT โครงการ จิตอาสาพัฒนาวัดบ้านเรา
 
โครงการจิตอาสาพัฒนาวัดบ้านเรา
โครงการจิตอาสาพัฒนาวัดบ้านเราโครงการจิตอาสาพัฒนาวัดบ้านเรา
โครงการจิตอาสาพัฒนาวัดบ้านเรา
 
งาน
งานงาน
งาน
 
บทที่ 3-วิธีการดำเนินงาน
บทที่ 3-วิธีการดำเนินงานบทที่ 3-วิธีการดำเนินงาน
บทที่ 3-วิธีการดำเนินงาน
 
บทที่ 2-เอกสารที่เกี่ยวข้อง
บทที่ 2-เอกสารที่เกี่ยวข้องบทที่ 2-เอกสารที่เกี่ยวข้อง
บทที่ 2-เอกสารที่เกี่ยวข้อง
 
โครงการ Is3
โครงการ Is3โครงการ Is3
โครงการ Is3
 
IT NEWS
IT NEWSIT NEWS
IT NEWS
 
ทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญาทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญา
 
ทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญาทร พย ส_นทางป_ญญา
ทร พย ส_นทางป_ญญา
 
ผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้น
ผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้นผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้น
ผลวิจัยเผย เกมที่ยากไปส่งผลให้คนเล่นก้าวร้าวขึ้น
 

คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น2

  • 1.
  • 3. การเขียนโปรแกรมเชิงวัตถุ (อังกฤษ: Object- oriented programming, OOP) คือหนึ่งใน รูปแบบการเขียนโปรแกรมคอมพิวเตอร์ ที่ให้ความสาคัญกับ วัตถุ ซึ่ง สามารถนามาประกอบกันและนามาทางานรวมกันได้ โดยการ แลกเปลี่ยนข่าวสารเพื่อนามาประมวลผลและส่งข่าวสารที่ได้ไปให้ วัตถุ อื่นๆที่เกี่ยวข้องเพื่อให้ทางานต่อไป
  • 5. • การเขียน program แบบ OOP มีลักษณะ 5 ประการ 1) ทุกสิ่งทุกอย่างคือ object ในแง่หนึ่งเราก็อาจตีความว่า object เป็นตัวแปรที่มีความพิเศษอยู่ในตัวเอง คือ นอกจาก เก็บค่าต่าง ๆ ได้แล้ว เรายังสามารถที่จะสั่ง (request) ให้ object ทางาน (operation) ต่าง ๆ ที่เกี่ยวกับตัวมันเองด้วย 2) Program ประกอบไปด้วย object ที่ต่างก็ส่งข้อความ (message) บอก ให้กันและกันว่าต้องทาอะไร การส่ง message ก็คือการส่ง request หรือการเรียกใช้ function ของ object นั้น ๆ 3) Object แต่ละตัวมีหน่วยความจาที่เต็มไปด้วย object อื่น ๆเราสร้าง object จาก object ตัวอื่นที่มีอยู่แล้ว 4) Object มี รูปแบบ หรือ ชนิด ของตัวเอง (type/class) 5) Object ที่ต้นตอมาจาก type แบบเดียวกันสามารถที่จะรับข้อมูลซึ่งกันและกันได้
  • 6. 1. OBJECT • – Object คือ สิ่งที่มีคุณสมบัติและพฤติกรรมตามที่กาหนดไว้ในคลาส • – ออบเจ็กต์(object) แบ่งได้เป็นสองประเภท คือ 1) สิ่งที่เป็นรูปธรรม (tangible) คือสิ่งที่เป็นวัตถุและจับต้องได้อาทิ เช่น นักศึกษา ปากกา และรถ เป็นต้น 2) สิ่งที่เป็นนามธรรม (intangible) คือสิ่งที่ไม่สามารถจับต้องได้อาทิ เช่น คะแนนรายชื่อวิชา การลงทะเบียน การฝาก-ถอนเงิน และตารางเที่ยวบิน เป็น ต้น
  • 7. • 1) คุณลักษณะ (attribute) หรือข้อมูล (data) 2) เมธอด (method) หรือพฤติกรรม (behavior) 3) คุณลักษณะ (attribute) หรือข้อมูล (data) ข้อมูลของ Object แต่ละ Object อาจมีข้อมูลที่แตกต่างกัน 4) เมธอด (method) หรือพฤติกรรม (behavior) สิ่งที่ Object สามารถกระทาได้ • ตัวอย่าง ออบเจ็กต์ คือ – นักศึกษา ประกอบไปด้วยคุณลักษณะเช่น รหัส ชื่อ และเกรดเฉลี่ย มีเมธอดเช่น ลงทะเบียน การสอบ และการเรียน – รถยนต์ ประกอบไปด้วยคุณลักษณะเช่น ยี่ห้อ รุ่น และสี มีเมธอดเช่น เคลื่อนที่ หยุดและเลี้ยว – สุนัข ประกอบไปด้วยคุณลักษณะเช่น ชื่อ พันธุ์ และสี มีเมธอดเช่น เห่า คลาน และกระดิกหาง
  • 8. 2. CLASS – Class หมายถึงโครงสร้างของ object โดย class เป็นตัวกาหนดว่า object นั้น จะมี data หรือคุณลักษณะอะไร บ้าง และมี method อะไรบ้าง เปรียบเสมือนพิมพ์เขียว (template) ของออปเจ็ค – ออปเจ็คที่ถูกสร้างมาจากคลาส (class) บางครั้งเรียกว่าเป็น instance ของคลาส คลาสหนึ่งคลาสสามารถสร้างออปเจ็คได้หลายออปเจ็ค – Object นั้นจะถูกสร้างขึ้นตามกระบวนการทางานของ JVM โดยที่นักพัฒนาจะต้อง นิยาม Class ที่ต้องการให้กับ JVM ตัวอย่าง คลาส เช่น คลาส Student อาจสร้างออปเจ็ค s1,s2 หรือ s3 ซึ่งเป็นออปเจ็คของคลาส Student
  • 11. STATIC • ตัวแปรและเมท็อดที่เป็น static • คีย์เวิร์ด static เป็นคีย์เวิร์ดที่ใช้ประกาศหน้าตัวแปรและเมท็อด ความพิเศษ ของ static คือว่าโดยปกติเวลาจะสร้างอ็อปเจ็คต้องทาการ new อ็อปเจ็ค ขึ้นมา ตัวแปรอ็อปเจ็คก็จะอ้างอิงไปที่อ็อปเจ็คที่สร้างขึ้น แล้วก็เอาตัวแปรนี้ไป เรียกใช้ตัวแปร ใช้เมท็อด แต่ถ้าตัวแปรหรือเมท็อดนั้นเป็น static ก็จะทาให้ สามารถใช้ตัวแปรหรือเมท็อดนั้นได้เลยโดยไม่ต้องสร้างอ็อปเจ็คมาเรียกใช้งาน • สาหรับตัวแปรที่เป็น static นั้น จะทาให้ตัวแปรนั้นเป็นตัวแปรของคลาส ไม่ได้เป็นของอ็อปเจ็คใดอ็อปเจ็คหนึ่ง ถ้ามีการเปลี่ยนแปลงขึ้นกับตัวแปร static อ็อปเจ็คอื่นๆทั้งหมดจะมองเห็นการเปลี่ยนแปลง
  • 12. วิธีประกาศ • สาหรับตัวแปร modifier static ชนิดตัวแปร ชื่อตัวแปร ; • สาหรับเมท็อด modifier static ประเภทผลลัพธ์ ชื่อเมท็อด( ) { } • วิธีการเรียกใช้งานเมท็อดที่เป็น static ถ้าอยู่ในคลาสเดียวกันก็ ชื่อ เมท็ อด(); แบบนี้ได้เลย แต่ถ้าอยู่คนละคลาสก็ ใช่ ชื่อคลาส.ชื่อเมท็อด static • เมท็อดที่เป็น static ที่ได้ใช้มาแล้วก็คือ เมท็อด main ใน public static void main(String [] args) เพราะว่า main เป็น เมท็อดสาหรับเริ่มทางาน ดังนั้นต้องสามารถทางานได้เลยโดยไม่ต้องมีอ็อปเจ็ค มาเรียกใช้งาน
  • 13. เมท็อดชื่อ F ในบรรทัดที่ 17 ประกาศเป็น เมท็อด STATIC ดังนั้นในบรรทัดที่ 12 สามารถเรียกใช้เมท็อด F ได้เลย แต่บรรทัดที่ 13 มีการเรียกใช้เมท็อด PRINTLN ซึ่งอยู่ในคลาส SYSTEM ก็ต้องใช้งานแบบ ชื่อคลาส.เมท็อด
  • 14. สังเกตว่าเมื่อเอาคาว่า STATIC ออกในบรรทัดที่ 17 จะเกิด ERROR ขึ้นทันทีที่บรรทัดที่ 12 ที่เรียกเมท็อด
  • 15. ตัวแปร เมท็อดและคลาสที่เป็น FINAL • คล้ายกับ static คีย์เวิร์ด final ใช้ประกาศหน้าตัวแปร เมท็อดและยัง ประกาศหน้าคลาสได้ด้วย - ถ้า final ไปประกาศหน้าตัวแปร ตัวแปรนั้นจะมีค่านั้นตลอดเปลี่ยนแปลง ไม่ได้เรียกว่าเป็นค่าคงที่ - ถ้าอยู่หน้าเมท็อดแล้วคลาสนี้ถูกสืบคุณสมบัติไป เมท็อดนี้จะไม่สามารถ เขียนทับแก้ไขได้หรือก็คือไม่สามารถ Overriding ได้ - แต่ถ้าอยู่คลาส คลาสนั้นๆจะไม่สามารถเป็นคลาสแม่ได้เลย คือบางทีไม่ ต้องการให้คนเอาอะไรเปลี่ยนทั้งนั้นก็ประกาศคลาสเป็น final เพราะบางที ประกาศเมท็อดเป็น final คลาสลูกก็เขียนเมท็อดใหม่ขึ้นมาได้เช่น เราไม่ ต้องการเขาเปลี่ยนชื่อ เขาก็เขียนเมท็อดสาหรับเปลี่ยนชื่อใหม่ได้
  • 16. วิธีประกาศ • สาหรับตัวแปร final ชนิดตัวแปร ชื่อตัวแปร = ค่าคงที่ ; • สาหรับเมท็อด modifier final ประเภทผลลัพธ์ ชื่อเมท็อด( ) { } • สาหรับคลาส modifier final class ชื่อคลาส{ }
  • 18. CONSTRUCTORS Constructors เป็นฟังก์ชันในคลาสที่จะถูกเรียกอัตโนมัติเมื่อเราสร้างอ็อบเจ็คให้กับ คลาสนั้น ๆ ด้วยคาสั่ง new ซึ่งมันจะเป็นฟังก์ชัน Constructors ได้ก็ต่อเมื่อชื่อ ของมันเหมือนชื่อคลาส ถ้าภายในคลาสไม่มี constructor ดังนั้นมันจะทาการเรียก constructure ของ base class (ถ้ามันมี) เช่น <?php class Auto_Cart extends Cart { function Auto_Cart() { $this->add_item("10", 1); } } ?>
  • 19. • Constructors function นั้นสามารถรับค่าพารามิเตอร์ได้เช่นกัน ดังนี้ <?php class Constructor_Cart extends Cart { function Constructor_Cart($item = "10", $num = 1) { $this->add_item($item, $num); } }
  • 20. การส่งออบเจ็กต์ไปยังเมท็อด • ในการเขียนโปรแกรมที่มีการสร้างคลาสขึ้นมาหลายๆคลาสนั้น ออบเจ็กต์ของคลาสหนึ่งสามารถใช้เป็นอาร์กิวเมนต์เพื่อส่งผ่านไปยังเมธ อดของคลาสอีกคลาสหนึ่งได้ • เช่นโปรแกรม Student.Java เป็นโปรแกรมคลาสสาหรับเก็บ ข้อมูลนักเรียน ได้แก่ ซื่อและอีเมลล์โดยมีเมท็อดสาหรับกาหนดและ เรียกดูชื่อและอีเมลล์สาหรับใช้งาน
  • 21. public class Student3 { private String name; private String email; public Student3() { name = "Unassigned"; email = "Unassigned"; } public String getEmail(){ return email; } public String getName(){ return name; } public void setEmail(String address){ email = address; } public void setName(String studentName){ name = studentName; } }
  • 22. ตัวอย่างการประยุกต์การเขียนโปรแกรมเชิงวัตถุ • เป็นการออกแบบคลาสแล้วนามาเขียนโปรแกรมประยุกต์ สาหรับใช้งานจริง โดยอธิบายขั้นตอนสาคัญในการทางานแต่ละขั้นตอน โดยมีโปรแกรมตัวอย่างการเขียนโปรแกรมสาหรับเข้ารหัสข้อมูลโดยส่ง ข้อมูลผ่านเข้าไปในเครือข่ายคอมพิวเตอร์ เพื่อความปลอดภัยได้นา เทคโนโลยีการเข้ารหัสมาใช้ ทาโดยการเลื่อนข้อมูล แต่ถ้าเป็นตัวอักขระ ตัวสุดท้ายของภาษาอังกฤษการเลื่อนข้อมูลจะกลับมาเริ่มต้นที่ตัวแรกใหม่
  • 23. ถ้าหากเป็น 2-shift ข้อมูลจะแทนได้ดังนี้ A แทนด้วย C B แทนด้วย D Y แทนด้วย A Z แทนด้วย B ถ้าข้อมูลต้นฉบับเป็น “DIZZY” แล้วเข้ารหัสแบบ 2- shift ข้อมูลที่เข้ารหัสแล้วจะเป็น “FKBBA”
  • 25. อธิบายการทางานของโปรแกรม 1.หากพิมพ์คาว่า Teerawut ลงไป จะทาให้ตัวแปร message ชี้ไปยัง ออบเจ็กต์สตริง “Teerawut” 2.ต่อมาถ้าหากกดคีย์ตัวเลข 5 ลงไป จะทาให้ตัวแปร shift มีค่าเป็น 5 3.เมื่อโปรแกรมเรียกใช้เมท็อด encrypt จะทาให้ msg ซึ่งเป็นพารามิเตอร์ของ เมท็อดชี้ไปยังออบเจ็กต์เดียวกับ message และพารามิเตอร์ shift มีค่าเป็น 5 เช่นกัน 4.เมื่อเมท็อด encrypt ทางาน ทาให้ตัวแปร encrypted Message ชี้ไปยังหน่อยความจาออบเจ็กต์สตริงที่สร้างขึ้นมาใหม่ 5.จากนั้นจะทาให้ตัวแปร msg ชี้ไปยังสตริงชุดใหม่ที่ผ่านการเข้ารหัสแล้ว 6.หลังจากนั้นจะให้ encryptedMessage มีค่าสตริงที่เข้ารหัสแล้ว
  • 26. ตัวอย่างโปรแกรม จะแสดงการสร้างคลาสของการนาตัวอักขระ [] มาสร้างเป็นรูปสามเหลี่ยม โดยการสร้างคลาสสามารถทาได้ ดังต่อไปนี้ 1.สร้างโปรเจ็กต์ใหม่ 2.สร้างคลาสใหม่ โดยเลือกเมนู New>Class 3.กาหนดชื่อคลาส แล้วกด Next 4.โปรแกรมจะแสดงคลาสใหม่ขึ้นมา 5.จากนั้นให้เติมโค้ด แล้วรันโปรแกรม
  • 27. สถานีสอนเขียนโปรแกรมอัจฉริยะ.การเขียนโปรแกรมเชิงวัตถุ.(ออนไลน์). แหล่งที่มา : http://blogwitt.tumblr.com/post /93188547255/101 static. ๒๔ พฤศจิกายน ๒๕๕๘ ณรงค์เดช บุญพุ่มพวงและคณะ.การเขียน program เชิงวัตถุ.(ออนไลน์). แหล่งที่มา : https://phuengkun1.wordpress.com คลาสและออบเจ็กต์ . ๒๔ พฤศจิกายน ๒๕๕๘ ทีมงานวิกิพีเดีย.(ออนไลน์). แหล่งที่มา : https://th.wikipedia.org/wiki/ ความหมายของโอโอพี . ๒๔ พฤศจิกายน ๒๕๕๘
  • 28. นางสาวไอรินทร์ นิธิภัทร์พรปัญญา เลขที่ 14 นางสาวปณิดา ธนกิจ เลขที่ 15 นางสาวลาภิศ อุทาทิพย์ เลขที่ 18 นางสาวกุลยา จันทรสูตร เลขที่ 21 นางสาวฉัตรชนก หงษาวดี เลขที่ 23 นางสาวธนัณญา เหลืองกัลยาณคุณ เลขที่ 24 นางสาวสิรีธร ขวัญอ่อน เลขที่ 29