Just another WordPress.com site

วันนี้ผมจะเขียนคำอธิบายเกี่ยวกับ method ที่ชื่อว่า main ใน java ที่เชื่อว่าหลายๆคนน่าจะงงๆกับมัน ตอนที่ผมฝึกเขียน java ใหม่ผมก็งงมากเหมือนกันครับ(ปัจจุบันผมไม่ได้เขียน java นานแล้วครับ)

สำหรับโครงสร้างของ java จะประกอบด้วย class กับ method สมมติว่าผมตั้งชื่อ class ว่า Hello ผมจะต้องเขียนว่า public class Hello สาเหตุที่ต้องประกาศสถานะของ class เป็น public ก็เพื่อที่จะให้ class นี้สามารถถูกเรียกใช้จากภายนอกได้ครับ

ทีนี้ถ้าเราต้องการให้ class Hello นี้สามารถทำรันได้ เราจะต้องใส่ method ที่ชื่อว่า main ลงไปครับ ซึ่งรูปแบบจะของmethod main ใน java จะมีการกำหนดไว้เลยว่า จะต้องรับ input เป็น array ของ string เท่านั้น และ output ของ method main จะต้องไม่ return ค่าใดๆทั้งสิ้น (void)

ส่วนคำนำหน้า public นั้นหน้า method main หมายความว่าเราจะกำหนดให้ method นี้เรียกใช้จากภายนอกได้ครับ

ส่วนคำนำหน้า static หน้า main นั้นเป็นการสั่งว่าเมื่อ method main โดยเรียกขึ้นมาให้ทำการจองหน่วยความจำที่เพียงพอในการรัน method main ครับ

ถ้าใครเคยเขียน java ในระดับหนึ่งจะทราบว่าการจองหน่วยความจำต้องใช้คำสั่ง new ซึ่งเราไม่สามารถใช้คำสั่งนี้ภายนอก java ได้ครับ เลยจำเป็นที่จะต้องประกาศคำนำหน้า method main เป็น static เพื่อให้โปรแกรมทำการจองหน่วยความจำโดยอัตโนมัติ

สำหรับการ compile ไฟล์ java ใน terminal จะใช้คำสั่ง

javac ชื่อไฟล์.java

เมื่อทำการ compile ไฟล์ Hello.java เสร็จแล้วจะได้ไฟล์ที่ชื่อ Hello.class ซึ่งสามารถนำไปรันได้

โดยการรันจะใช้คำสั่ง

java ชื่อไฟล์

ดังนี้ครับ

เมื่อเราใช้คำสั่ง java Hello มันจะทำให้เกิดการเรียกใช้ Hello.class โดย unix (ถ้าไม่ตั้ง class Hello เป็น public จะเรียกใช้ไม่ได้) เมื่อ Hello.class โดนเรียกขึ้นมามันจะวิ่งไปเรียก method main เลยครับ(ถ้าไม่ตั้ง method main เป็น public มันจะเรียกใช้ไม่ได้) แล้วทำการจองหน่วยความจำสำหรับการคำนวณต่างๆใน method main โดยคำสั่ง static

ส่วน input ของ method main นั้น เราไม่จำเป็นต้องใช้ชื่อ args นะครับ เราสามารถตั้งชื่อเป็นอย่างอื่นก็ได้ นอกจากนี้แล้วในส่วน input ของ method main เราจะนำใช้ในโปรแกรมหรือไม่ใช้ก็ได้นะครับไม่มีปัญหา

สมมติว่าผมจะทดลองการนำ input มาใช้ในโปรแกรม โดยให้ java ทำการแสดงผล string จากภายนอกที่ทำการรับเข้ามา 2 ตัว ผมอาจจะเขียนโปรแกรมได้แบบนี้ครับ

สำหรับตัวอย่างสุดท้ายในบล็อกนี้ ผมจะเขียนโปรแกรมที่รับค่าตัวเลขมาสองตัว แล้วให้โปรแกรมทำการคำนวนบวก ผลต่าง ผลคูณ และผลหาร ของตัวเลขทั้งสองนั้น

โดยในการเขียนโปรแรมผมจะแปลงข้อมูลชนิด string เป็น int ก่อน โดยใช้ method ที่ชื่อว่า parseInt ของ class Integer ดังนี้ครับ

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: