ݺߣ
Submit Search
คลาสและการขียนโปรแกรมเชิงวัตถุบื้องต้น
0 likes
324 views
Finian Nian
1 of 9
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
More Related Content
What's hot
(20)
PDF
Java-Chapter 11 Recursions
Wongyos Keardsri
PPTX
บทที่ 8 Methods
Kanchana Theugcharoon
PDF
4.Oop
UsableLabs
PDF
5.Methods cs
UsableLabs
PDF
6.Flow control
UsableLabs
PDF
3.Expression
UsableLabs
PPTX
METHODS
kessara61977
PPT
Java Programming [12/12] : Thread
IMC Institute
PDF
Java Programming: อะเรย์และคอลเล็กชั่น
Thanachart Numnonda
PPTX
Reference :: Java :: เต็ม
Jitti Nut
PDF
บทที่ 6 อาร์เรย์
Theeravaj Tum
PDF
Java-Chapter 06 File Operations
Wongyos Keardsri
PDF
Java Programming: โครงสร้างควบคุม
Thanachart Numnonda
PDF
Java Programming: คลาสอินพุตและเอาต์พุต
Thanachart Numnonda
PDF
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์
Thanachart Numnonda
PDF
8.Inheritance
UsableLabs
PDF
Java Programming: การสร้างส่วนต่อประสานกราฟิกกับผู้ใช้ (Java GUI)
Thanachart Numnonda
PDF
บทที่ 5 คลาส
Theeravaj Tum
PDF
Java-Chapter 07 One Dimensional Arrays
Wongyos Keardsri
PPT
Java Programming [8/12] : Arrays and Collection
IMC Institute
Java-Chapter 11 Recursions
Wongyos Keardsri
บทที่ 8 Methods
Kanchana Theugcharoon
4.Oop
UsableLabs
5.Methods cs
UsableLabs
6.Flow control
UsableLabs
3.Expression
UsableLabs
METHODS
kessara61977
Java Programming [12/12] : Thread
IMC Institute
Java Programming: อะเรย์และคอลเล็กชั่น
Thanachart Numnonda
Reference :: Java :: เต็ม
Jitti Nut
บทที่ 6 อาร์เรย์
Theeravaj Tum
Java-Chapter 06 File Operations
Wongyos Keardsri
Java Programming: โครงสร้างควบคุม
Thanachart Numnonda
Java Programming: คลาสอินพุตและเอาต์พุต
Thanachart Numnonda
Java Programming: การเขียนโปรแกรมภาษาจาวาเชิงอ็อบเจกต์
Thanachart Numnonda
8.Inheritance
UsableLabs
Java Programming: การสร้างส่วนต่อประสานกราฟิกกับผู้ใช้ (Java GUI)
Thanachart Numnonda
บทที่ 5 คลาส
Theeravaj Tum
Java-Chapter 07 One Dimensional Arrays
Wongyos Keardsri
Java Programming [8/12] : Arrays and Collection
IMC Institute
Similar to คลาสและการขียนโปรแกรมเชิงวัตถุบื้องต้น
(20)
PDF
Java-Chapter 08 Methods
Wongyos Keardsri
PDF
Power point
Pookie Pook
PPT
08 arrays
a-num Sara
PDF
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
Nattapon
PDF
Java-Chapter 13 Advanced Classes and Objects
Wongyos Keardsri
PDF
Know1 3
โรงเรียนอุตรึϸตถ์ดรุณี
PPT
พื้นฐาȨาษาจาวา
Aeew Autaporn
PDF
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1
Little Tukta Lita
PPT
02 basic
ชญานิษฐ์ ทบวัน
PDF
Know4 3
โรงเรียนอุตรึϸตถ์ดรุณี
PDF
งาȨำเสนอ1
prapassonmook
PPT
Control structure
Nitigan Nakjuatong
PDF
Ass1 1
โรงเรียนอุตรึϸตถ์ดรุณี
PPT
03 input math
ชญานิษฐ์ ทบวัน
PDF
7 2โครงสร้าง
Supaksorn Tatongjai
PPTX
การเขียนคำสั่งควบคุมแบบมีทางลือก.
Mink Kamolwan
DOCX
นางสาว จรัญญา-กฤตย์ณัชช์-59170236-กลุ่ม-1
หน่อย หน่อย
DOC
Chapter3
Parkae' Kusuma
DOC
66
Parkae' Kusuma
PDF
งาȨำเสนอ1
Mook Prapasson
Java-Chapter 08 Methods
Wongyos Keardsri
Power point
Pookie Pook
08 arrays
a-num Sara
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
Nattapon
Java-Chapter 13 Advanced Classes and Objects
Wongyos Keardsri
Know1 3
โรงเรียนอุตรึϸตถ์ดรุณี
พื้นฐาȨาษาจาวา
Aeew Autaporn
บทที่ 5 ข้อมูลชนิดอาร์เรย์และสตริง 6.1
Little Tukta Lita
02 basic
ชญานิษฐ์ ทบวัน
Know4 3
โรงเรียนอุตรึϸตถ์ดรุณี
งาȨำเสนอ1
prapassonmook
Control structure
Nitigan Nakjuatong
Ass1 1
โรงเรียนอุตรึϸตถ์ดรุณี
03 input math
ชญานิษฐ์ ทบวัน
7 2โครงสร้าง
Supaksorn Tatongjai
การเขียนคำสั่งควบคุมแบบมีทางลือก.
Mink Kamolwan
นางสาว จรัญญา-กฤตย์ณัชช์-59170236-กลุ่ม-1
หน่อย หน่อย
Chapter3
Parkae' Kusuma
66
Parkae' Kusuma
งาȨำเสนอ1
Mook Prapasson
Ad
More from Finian Nian
(9)
PDF
Microsoft power point วิธีการเชิงวัตถุและการออกแบบคลาส.pptx
Finian Nian
PDF
Microsoft power point วิธีการเชิงวัตถุและการออกแบบคลาส.pptx
Finian Nian
PDF
แปลก
Finian Nian
PDF
คลาสและการขียนโปรแกรมเชิงวัตถุบื้องต้น
Finian Nian
PPTX
คลาสและการขียนโปรแกรมเชิงวัตถุบื้องต้น
Finian Nian
DOCX
รายงานการประมิȨลุ่ม4
Finian Nian
DOCX
รายงานการประมิȨลุ่ม4
Finian Nian
DOCX
ยอึϸ่งออก
Finian Nian
DOCX
It news
Finian Nian
Microsoft power point วิธีการเชิงวัตถุและการออกแบบคลาส.pptx
Finian Nian
Microsoft power point วิธีการเชิงวัตถุและการออกแบบคลาส.pptx
Finian Nian
แปลก
Finian Nian
คลาสและการขียนโปรแกรมเชิงวัตถุบื้องต้น
Finian Nian
คลาสและการขียนโปรแกรมเชิงวัตถุบื้องต้น
Finian Nian
รายงานการประมิȨลุ่ม4
Finian Nian
รายงานการประมิȨลุ่ม4
Finian Nian
ยอึϸ่งออก
Finian Nian
It news
Finian Nian
Ad
คลาสและการขียนโปรแกรมเชิงวัตถุบื้องต้น
1.
ความหมายของโอโอพี
โอโอพี หรื OOP เปนคํายอของ Object-Oriented Programming หมายถึงการเขียนโปรแกรมเชิงวัตถุ หรือเขียนโปรแกรมแบบออบเจ็กต การเขียนโปแกรมในลักษณะนี้จะแตกตางจากกา เขียน ร โปรแกรมที่ประมวลผลเชิงคําสั่งที่มีการทํางานทีละตําสั่งดังที่เคยศึกษามา แตจะเปนการสรางขอมูลเปนวัตถุหรือออบเจ็กต แลว เขียนโปแกรมประมวลกับออบเจ็กตนั้นๆ ใหทํางานตามตองการ นอกจากนั้นยังเขียนโปรแกรมประมวลผลกับออบเจ็กตได ซึ่ง ออบเจ็กตจะมีลักษณะ 3 ประการดังตอไปนี้ state เปนคุณลักษณะของออบเจ็กตนั้นๆ ที่บอกวาออบเจ็กตนั้นเปนอะไรบาง หรือเรียกอีกอยางหนึ่งวาเปน คุณลักษณะประจํา โดยคุณสมบัติขึ้นกับมุมมองของแตละคน ในการเขียนโปรแกรมเชิงวัตถุ คุณลักษณะประจํานี้มักจะเปน ขอมูล หรือตัวแปรตางๆ ของออบเจ็กตนั้น Behavior หมายถึง พฤติกรรมของออบเจ็กต I dentity เปนคุณลักษณะที่ทําใหออบเจ็กตแตละออบเจ็กตตางกัน ในการเขียนโปรแกรมนั้นออบเจ็กตมีไดหลายตัว โดยออบเจ็กตแตละตัวจะเปนอิสระ ไมขึ้นตอกันแตละออบเจ็กต สามารถที่จะสื่อสารหรือโตตอบกันไดโดยวิธีสงเมสเสจ ถึงกัน
2.
คลาสและออบจ็กตȎ
การมองทุกอยางของปญหาเปนวัตถุหรืออบเจ็กตนั้น ถาหากวัตถุใดมีลักษณะคลายกันก็จะรวมทั้งหมดให เปนคลาส ถาหากมีตัวแปรหรือสรางขอมูลขึ้นมา ขอมูลนั้นก็จะถูกใชในออบเจ็กตนั้นๆ การกระทํากับออบเจ็กตจะกระทําผานเมธอดของคลาส นั้นๆ สวนสําคัญสองสวนของออบเจ็กตคือ คุณลักษณะซึ่งเปนขอมูลประจําตัวของออบเจ็กตและพฤติกรรมหรือเมธอด ซึ่งบอกวา ออบเจ็กตกําลังทําสิ่งใดอยูถาหากมีการสรางออบเจ็กตขึ้นมาและโปรแกรมตองการจัดการกับขอมูลทีเ่ ปนคุณลักษณะของออบเจ็กตก็จะกระทํา ผานเมธอด สําหรับคลาสจะเปนที่รวบรวมของออบเจ็กตหลายๆ ออบเจ็กตที่มีลักษณะเดียวกัน แตอาจมีขอมูลประจําตัวหรือคุณลักษณะ ตางๆ ดังนั้นในการเขียนโปรแกรมเชิงวัตถุนั้นจะตองรูจักการนิยาม คลาส จากทีกลาวมาแลวจะพบวาคลาสเปนการจัดกลุมของ ่ ออบเจ็กตที่มีคุณลักษณะและพฤติกรรมอยางเหมือนกัน เปรียบเสมือนเปนพิมพเขียวของออบเจ็กต หรือเปนแมแบบสําหรับออบเจ็กต ในการเขียนโปรแกรมเชิงวัตถุนั้นจะไมมีการใชงานคลาสตรงๆ แตจะใชคลาสเปนพิมพเขียวเพื่อสรางออบเจ็กตตางๆขึ้นมา ออบเจ็กตทถูกสรางจากคลาสจะเรียนกวา อินสแตนซ ของคลาสนั้นโดยที่คลาสใดคลาสหนึ่งสามารถสรางออบเจ็กตออกมาไดหลายตัวแตละ ี่ ตัวจะมีชื่อแตกตางกันไป สําหรับการเขียนโปรแกรมเชิงวัตถุดวยภาษตางๆนั้น จะมีคลาสมาตรฐานใหผูเขียนโปรแกรมใชงาน และผูเขียนโปรแกรมก็ตอง เขาใจวิธีการสรางคลาสขึ้นมาเองดวย ดังนั้นในการเขียนโปรแกรมเชิงวัตถุจะตองพยายามจําแนกวาวัตถุที่เราสนใจนั้นตองมีตัวแปรใดที สามารถแยกแยะวัตถุแตละตัวได และวัตถุดังกลาวมีพฤติกรรมอยางไร จากนั้นนํามารวมเปนคลาส และสรางคลาสนั้นขึ้นมา
3.
การนิยามคลาส
ในภาษาจาวาสามารถนิยามคลาสหรือประกาศคลาสขึ้นมาโดยมีรูปแบบดังนี้ [AccessSpecifier] Class Name { Members } AccessSpecifier เปนความสามารถในการเขาถึงคลาสนั้นๆ class เปนคียเวิรดในภาษาจาวาเพทอใชในการประกาศคลาส Name เปนชื่อคลาสมี่ประกาศขึ้น Members เปนคุณลักษณะหรือเมธอดตางๆ ของคลาสที่นิยามขึ้น การสรางออบเจ็กต หลังจากนิยามคลาสขึ้นมาแลว ถาหากโปรแกรมตองการใชงานจะตองสรางออบเจ็กตขึ้นมา เพื่อบอกวาออบเจ็กตเปนของคลาสใด โดยจะตองประกาศออบเจ็กตขึ้นมากอนซึ่งมี รูปแบบดังนี้ ClassName ObjectName; การประกาศออบเจ็กตนี้จะทําใหคอมไพเลอรรับทราบวามีตัวแปร ObjectName แตจะยังไมมีหนวยความจําสําหรับขอมูลของออบเจ็กตที่ประกาศขึ้น ซึ่ง จะตองสรางออบเจ็กตขึ้นมากอนโดยใชคําวา new ซึ่งมีรูปแบบดังนี้ objecyName = new ClassName([arguments]) เมือมีการสรางออบเจ็กตขึ้นมาแลว สมาชิกของออบเจ็กตคือสมาชิกของคลาสนั้น ซึ่งไดแกคุณลักษณะหรือตัวแปรและเมธอดตางๆ ออบเจ็กตจะ สามารถเขาถึงขอมูลที่เปนคุณลักษณะหรือเรียกใชเมธอดไดไมขึ้นกับaccessSpecifier ที่ถูกประกาศไวตอนนิยามคลาส โดยการเรียกใชสมาชิกจะทําโดยใชเครื่องหมายจุด แลว ตามดวยสมาชิกที่ตองการเรียกใช
4.
สแตติก(ٲپ)
ในจาวามีคลาสตางๆใหใชงานมากมาย การสรางคลาสขึ้นมาใหมนี้ทําใหเราสามารถสรางเมธอดใหมๆ ขึ้นมาใชงานแลวรวมกันเปนคลาสได และที่ผานมาในบทนี้จะเห็นวาถาหากมีการประกาศออบเจ็กตตองการใชงานสรางออบเจ็กตดวยคําสั่ง new เชน import java.util.Scanner; public class Cal_Max { public static void main(String args[]) { int num1,num2; Scanner stdin = new Scanner(System.in); System.out.print("Input Number 1 : "); num1 = stdin.nextInt(); System.out.print("Input Number 2 : "); num2 = stdin.nextInt(); int larger = TestMax.max(num1,num2); System.out.println("Max Data is "+larger); } } class TestMax { static int max(int num1, int num2) { if(num1 > num2) return num1; else return num2; } } จากโปรแกรมนี้จะเปนวาเมธอดในคลาส Scanner ที่ใชรับขอมูลจะไมเปนแบบสแตติก ซึ่งจะตองสรางออบเจ็กตขึ้นมา แต เมธอดชื่อmax ในคลาส TestMax ที่สรางขึ้นปนแบบสแตติก จึงเรียกชื่อคลาสและตามดวยเมธอดมาใชงานไดทันทีโดยไมตองสราง ออบเจ็กต
5.
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); } } // ในกรณีที่ไมสงคาพารามิเตอรใหกับ Constructor function $default_cart = new Constructor_Cart; // ในกรณีนี้ฟงกชัน Constructor ของ Constructor_Cart นั้นไดกําหนดคา default ใหกับพารามิเตอรอยูแลว // ดังนั้น เราก็ไมจําเปนตองสงคาพารามิเตอรก็ได ไมเกิด error // กรณีที่สงคา parameter ไปดวย $different_cart = new Constructor_Cart("20", 17); ?>
6.
การสȊงออบเจ็กตȎไปยังมธอด
ในการเขียนโปรแกรมที่มีการสรางคลาสขึ้นมาหลายๆคลาสนั้น ออบเจ็กตของคลาสหนึ่งสามารถใชเปนอารกิวเมนตเพื่อสงผานไปยังเมธอดของคลาสอีกคลาสหนึ่งได เชนโปรแกรม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; } }
7.
ตัวอยางการประยุกตȎการขียนโปรแกรมเชิงวัตถุ
จะเปนแบบการออกแบบคลาสแลวนํามาเขียนโปรแกรมประยุกตสําหรับใชงานจริง โดยอธิบายขั้นตอนสําคัญในการทํางานแตละขั้นตอน โดยมีโปรแกรมตัวอยางการเขียนโปรแกรมสําหรับเขารหัสขอมูลโดยสงขอมูลผานเขาไปในเครือขายคอมพิวเตอรเพื่อความปลอดภัยไดนํา เทคโนโลยีการเขารหัสมาใช ทําโดยการเลื่อนขอมูล แตถาเปนตัวอักขระตัวสุดทายของภาษาอังกฤษการเลื่อนขอมูลจะกลับมาเริ่มตนที่ตวแรกใหม ั - ถาหากเปน 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 ทํางาน ทําใหตัวแปร encryptedMessage ชี้ไปยังหนอยความจําออบเจ็กตสตริงที่สรางขึ้นมาใหม 5.จากนั้นจะทําใหตัวแปร msg ชี้ไปยังสตริงชุดใหมที่ผานการเขารหัสแลว 6.หลังจากนั้นจะให encryptedMessage มีคาสตริงที่เขารหัสแลว
8.
ตัวอยางโปรแกรม จะแสดงการสรางคลาสของการนําตัวอักขระ[]มาสรางเปนรูปสามเหลี่ยม โดยการสรางคลาสสามารถทําได ดังตอไปนี้ 1.สรางโปรเจ็กตใหม 2.สรางคลาสใหม
โดยเลือกเมนู New>Class 3.กําหนดชื่อคลาส แลวกด Next 4.โปรแกรมจะแสดงคลาสใหมขึ้นมา 5.จากนั้นใหเติมโคด แลวรันโปรแกรม สรุป คลาสเปรียบเสมือนพิมพเขียวสําหรับสรางออบเจ็กตตางๆออกมาที่มีลักษณะคลายกันมาอยูรวมกัน ในการสรางค ลาส นั้น ภายในประกอบดวยสวนที่เปนคุณลักษณะหรือตัวแปรตางๆและสวนที่เปนเมธอดโดยที่ตัวแปรและเมธอดนี้ผที่นิยามคลาส ู สามารถกําหนดไดวาจะใหผูใชภายนอกสามารถเขาถึงไดในระดับใด เมื่อมีการออบเจ็กตของคลาสขึ้นมาแลวตองการใหทําเมธ อดใดทันที ในการนิยามคลาสนั้นจะตองสรางเมธอดที่มีชื่อเดียวกับคลาสที่เรียกวา คอนสตรัคเตอร ขึ้นมา
9.
คลาสและการขียนโปรแกรมวัตถุบื้องตȋน
จัดทําโดย นายปตพงษ ปลีบุตร เลขที่10 ิ นางสาว รุงทิวา ผดุงพัฒนดิษฐ เลขที20 ่ นางสาวจณิสตา ลิ้มทอง เลขที่30 นางสาวจันทรา แสงสุริยาอุทัย เลขที31 ่ นางสาวนิศาชล ไทยพุทรา เลขที่33 นางสาวอาริษา งามขํา เลขที่37 นักเรียนชั้น ม.6/1 โรงเรียนเฉลิมพระเกียรติสมเด็จพระศรีนครินทร กาญจนบุรี วิชาการเขียนโปรแกรมประยุกต (ง30213) เสนอ ครูทรงศักดิ์ โพธิ์เอี่ยม
Download