โครงสร้างและการใช้งาน Method จัดทำโดย : Mr.POP พิมพ์
 Untitled Document

สวัสดีครับ จากบทความที่ผ่านมาเราได้คุ้นเคยกับการใช้งาน Method ใน Calss ต่างๆ กันมาบ้างแล้วนะครับ คราวนี้เรา จะลองมาศึกษาโครงสร้างของ Method กันอย่างจริงจังดูซักทีว่า ถ้าเราต้องการสร้าง Method ใดๆ ขึ้นมาใช้งานเองบ้างล่ะจะมีวิธี การอย่างไร และมาศึกษาองค์ประกอบต่างๆ ใน Method ด้วย เรามาเริ่มกันเลยดีกว่านะครับ

ประเภทของ Method
Java แบ่ง Method ออกเป็น 2 ประเภท ได้แก่

1. Method ที่สร้างขึ้นเอง โดยผู้เขียนจะเขียน Method ต่างๆ ใช้เองตามต้องการ Method ที่สร้างขึ้นมาเองนี้ อาจเป็น Method ที่อยู่ใน Class เดียวกัน หรือต่าง Class กันก็ได้

2. Method ที่มีอยู่แล้ว จะได้มาพร้อม Package ของ JDK โดย Method เหล่านี้อยู่ใน Class Librariesต่างๆ ที่เราต้องการ import เข้ามา

โครงสร้างทั่วไปของ Method

จากโคร้งสร้างจะเห็นว่าโปรแกรมหนึ่งอาจมีหลาย Class และในหนึ่ง Class จะมีกี่ Method ก็ได้แต่ใน Class หลัก (Class ที่มี public นำหน้า) จะต้องมี main Method เสมอ

Method ที่ส่งค่ากลับและ Method ที่ไม่ส่งค่ากลับ
แต่ละ Method จะมีการรับส่งค่าให้กันในระหว่างการเรียกใช้โดย Method ที่เป็นตัวเรียกจะต้องส่งค่าไปให้กับ Method ที่ถูกเรียก Method ที่มีการส่งค่ากลับมาจะต้องเป็น Method ที่ถูกประกาศเป็น type ต่างๆ เช่น int ,long ,float และ ภายใน Method จะต้องมีคำสั่ง return และตามด้วยค่าที่จะส่งกลับมายัง Method ถ้า Method ใดไม่ต้องการส่งค่ากลับให้เขียนคำสั่ง return เฉยๆ หรืออาจใช้ void มาช่วยก็ได้ (ถ้า Method ถูกประกาศเป็น void แล้วไม่ต้องใช้คำสั่ง return) ลองมาดูตัวอย่างของโปรแกรมครับ

อธิบายโปรแกรม จากโปรแกรมเราจะเห็นว่าภายในคลาส TestMax นั้นมีอยู่ 2 Method คือ max กับ print ผมจะอธิบายแต่ละ Method อย่างละเอียดดังนี้

int max (int x, int y)
ที่หน้า Method มีการระบุชนิดของข้อมูลเป็น int อยู่แสดงให้เห็นว่า Method นี้ต้องส่งค่ากลับเป็น int หลังจากทำงานเสร็จแล้ว และภายในวงเล็บมีพารามิเตอร์ (int x, int y) นั้นหมายถึง Method นี้ต้องการรับพารามิเตอร์มา 2 ตัวเป็นชนิด int

void print(int a, int b, int c)
ที่หน้า Method มีการกำหนดไว้เป็น void หมายถึง Method นี้จะไม่มีการส่งค่ากลับหลังจากทำงานเสร็จแล้วและภายในวงเล็บก็ต้อง การรับพารามิเตอร์เข้ามา 3 ตัวซึ่งมีลักษณะคล้ายๆ กับ Method ข้างบน

คราวนี้เราลองมาดูภาพรวมในการทำงานของโปรแกรมนี้กันอีกทีนะครับ ที่ main
บรรทัดที่ 6 -7 กำหนดตัวแปร 2 ตัว คือ num1 และ num2
บรรทัดที่ 8 สร้าง object ขึ้นมาชื่อ TM จากคลาส TestMax
บรรทัดที่ 9 กำหนดตัวแปร num3 ขึ้นมาเพื่อใช้ในการเก็บคำตอบโดยมีการเรียกใช้ Method max หลังเครื่องหมาย (=) และ ส่งพารามิเตอร์ไป 2 ตัว คือ num1 และ num2 เพื่อนำไปเปรียบเทียบหาค่าที่มากกว่า ลองมาดูการอธิบายด้วยรูปภาพทีละ step ครับ


ให้เราลองเปรียบเทียบว่า Method max นั้นก็เหมือนกับตัวแปรอีกแบบหนึ่งที่ต้องการค่า int มาเก็บไว้ เพราะหน้า max ถูกประกาศ เป็น int นั่นเอง ตัวแปร num3 จึงสามารถเก็บค่าคำตอบที่ได้จากการ return ค่าของ max นั่นเอง

บรรทัดที่ 10 มีการเรียกใช้ print โดย object TM พร้อมส่งพารามิเตอร์ไป 3 ตัว คือ num1,num2 และ num3 นั่นเอง


สำหรับ Method ที่มี void อยู่ข้างหน้าจะเป็น Method ที่ทำงานแบบเสร็จสิ้นในตัวมันเองนะครับ มันจะไม่มีการส่งค่ากลับมาทำงาน ใดๆ ต่อทั้งนั้น อย่างในตัวอย่าง print จะทำหน้าที่แสดงผลลัพธ์ของโปรแกรมอย่างเดียวเท่านั้นถ้าถูกเรียกใช้งาน

เป็นอย่างไรบ้างครับคงไม่ยากเกินไปนะครับสำหรับการสร้าง Method ขึ้นมาใช้งานเองซึ่งเราต้องเรียนรู้โครงสร้างเบื้องต้นของมัน ก่อนจึงจะนำมาสร้างและใช้งานได้อย่างถูกต้อง เรื่องของ Method ยังไม่จบเท่านี้นะครับยังมีรายละเอียดอื่นอีกไว้ติดตามตอนต่อ ไปนะครับ สวัสดีครับ...

คุณอาจสนใจ
การทำปฎิทินด้วย Java Script
nut (40,830 - 07 มี.ค. 51)
การใช้คำสั่ง Date
Mr.GuruZ (32,789 - 03 มิ.ย. 49)
การทำตัวอักษร�3D ด้วย Photoshop
Black-Hawk (95,029 - 05 ก.พ. 51)
สร้างลูกเต๋าแบบสุ่ม
langjuko (105,371 - 01 ก.ย. 51)
เร่งสปีดตอนบู๊ตวินโดวส์
เว็บไทยดีดี (13,909 - 11 ส.ค. 50)
การลอกลายภาพ
Lek (85,084 - 27 มิ.ย. 49)
การสร้างฐานข้อมูลใน MS Access
อ้อม (27,268 - 07 เม.ย. 50)
การนำ User Online ไปใช้งาน
Mr.GuruZ (39,333 - 03 มิ.ย. 49)