เราหมายถึงอะไรเมื่อเราพูดถึงคลาสใน Java? แน่นอนว่าไม่ใช่ชั้นเรียนแบบที่คุณมีในโรงเรียนกับนักเรียนและครู คลาสคือพิมพ์เขียวสำหรับอ็อบเจ็กต์ในโค้ดของคุณ
Java เป็นภาษาโปรแกรมเชิงวัตถุ ซึ่งหมายความว่ามีคุณลักษณะหลายอย่างที่ช่วยให้คุณเขียนโค้ดที่ใช้ซ้ำได้ การเขียนโปรแกรมเชิงวัตถุมีประโยชน์สำหรับโปรแกรมทุกขนาด เนื่องจากช่วยลดการซ้ำซ้อน ซึ่งจะทำให้โค้ดของคุณอ่านง่ายขึ้น
ในคู่มือนี้ เราจะพูดถึงสองแนวคิดที่สำคัญใน Java:คลาสและอ็อบเจ็กต์ เราจะหารือเกี่ยวกับวิธีการทำงาน และวิธีที่คุณสามารถนำไปใช้ โดยอ้างอิงจากตัวอย่าง
จาวาคลาสคืออะไร
ชั้นเรียนเป็นเหมือนพิมพ์เขียวสำหรับวัตถุ ในขณะที่พิมพ์เขียวสำหรับห้องนอนอาจบอกว่ามีการติดตั้งประตูและหน้าต่างประเภทใด ชั้นเรียนจะบอกโปรแกรมของคุณว่าวิธีการและค่าใดที่วัตถุควรเข้าถึงและจัดเก็บได้
คลาสมีประโยชน์เพราะอนุญาตให้คุณประกาศโครงสร้างสำหรับข้อมูลบางประเภทได้ครั้งเดียว ซึ่งคุณสามารถอ้างอิงได้หลายครั้งด้วยการประกาศอ็อบเจ็กต์
มากำหนดคลาสที่ชื่อว่า Employee ซึ่งมีหนึ่งตัวแปรและสองวิธี:
public class Employee { boolean isOnVacation; public void startVacation() { isOnVacation = true; System.out.println("You are now on vacation."); } public void endVacation() { isOnVacation = false; System.out.println("You are not on vacation anymore."); } }
ในโค้ดของเรา เราได้กำหนดวิธีไว้สองวิธี:วิธีแรกเพื่อเริ่มการลาพักร้อนของพนักงาน และอีกวิธีหนึ่งเพื่อยุติการลาพักร้อนของพนักงาน เราได้ประกาศตัวแปรอินสแตนซ์บูลีนที่เรียกว่า isOnVacation เพื่อติดตามข้อมูลนี้
เรายังไม่ได้สร้างวัตถุของคลาสพนักงานของเรา เราได้จัดทำโครงร่างพิมพ์เขียวเท่านั้น ซึ่งจะกำหนดลักษณะของวัตถุเหล่านั้นในภายหลัง
81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้
ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก
วัตถุ Java คืออะไร
วัตถุเป็นตัวอย่างของคลาสเฉพาะ มาสร้างวัตถุโดยใช้พิมพ์เขียวพนักงานของเราจากก่อนหน้านี้ เราจะสร้างวัตถุที่เรียกว่า john:
Employee john = new Employee();
รหัสนี้สร้างอินสแตนซ์ของคลาส Employee สังเกตว่าเราได้เพิ่มวงเล็บสองอันหลังชื่อชั้นเรียน ซึ่งบอกให้รหัสของเราอ้างอิงถึงคลาส Employee new
คีย์เวิร์ดบอกให้โค้ดของเราสร้างออบเจกต์ใหม่ของคลาสนั้น
ตอนนี้ มาใช้วิธีวัตถุของเรา:
Employee john = new Employee(); john.startVacation(); john.endVacation();
เรียกใช้โปรแกรมของเราและดูว่าเกิดอะไรขึ้น:
You are now on vacation. You are not on vacation anymore.
วัตถุของเราเรียกสองวิธีที่เรากำหนดไว้ในคลาส Employee ของเรา ซึ่งทำให้โค้ดภายในเมธอดเหล่านั้นทำงาน เมื่อเรารัน john.startVacation()
ตัวอย่างเช่น ค่าของ isOnVacation
boolean ถูกตั้งค่าเป็นจริง และข้อความ "You are now on vacation" ถูกพิมพ์ไปยังคอนโซล Java
แม้ว่าเราจะกำหนดตัวแปร isOnVacation
ในชั้นเรียนของเรา เราสามารถเข้าถึงค่าที่ได้รับมอบหมายในวัตถุเฉพาะ พิจารณารหัสนี้:
Employee john = new Employee(); john.startVacation(); john.endVacation(); System.out.println(john.isOnVacation);
รหัสนี้จะเริ่มต้นและสิ้นสุดการพักร้อนของ John เช่นเดียวกับในตัวอย่างสุดท้าย จากนั้นจะพิมพ์ค่าของ isOnVacation
ตัวแปรไปยังคอนโซล:
You are now on vacation. You are not on vacation anymore. false
คุณค่าของ isOnVacation
. ของเรา เมธอด false
.
ตัวสร้าง Java
วิธี Constructor ช่วยให้คุณเริ่มต้นข้อมูลในคลาสได้ ในตัวอย่างข้างต้น เราได้ประกาศตัวแปรในเนื้อหาหลักของคลาสของเรา แต่เราไม่ได้เริ่มต้นตัวแปรด้วยค่าเริ่มต้น
พิจารณารหัสต่อไปนี้:
class Employee { boolean isOnVacation; public Employee() { isOnVacation = false; System.out.println("Initialized values."); } ... }
ตอนนี้ มาสร้างวัตถุของคลาส Employee กัน:
Employee john = new Employee(); john.startVacation();
เมื่อเราสร้าง john
. ของเรา วัตถุ ตัวสร้างของเราจะเรียกใช้โดยอัตโนมัติ วิธีนี้ช่วยให้คุณสามารถตั้งค่าเริ่มต้นที่คุณต้องการให้ชั้นเรียนของคุณถือได้ วิธีการของเราส่งคืน:
Initialized values. You are now on vacation.
เมื่อดำเนินการ ตัวสร้างของเราตั้งค่า isOnVacation
เป็นเท็จ จากนั้นจะพิมพ์ Initialized values
ไปยังคอนโซลของเรา
การสร้างหลายออบเจ็กต์
ถ้าเรามีพนักงานสองคนล่ะ? ยังใช้คลาสเดิมได้มั้ยคะ? ใช่! นั่นคือประโยชน์ของการใช้คลาส:คุณสามารถประกาศหลายอ็อบเจ็กต์โดยใช้คลาสเดียวกัน
พิจารณาโปรแกรมหลักต่อไปนี้:
Employee john = new Employee(); john.startVacation(); john.endVacation(); System.out.println(john.isOnVacation); Employee ian = new Employee(); ian.startVacation(); System.out.println(ian.isOnVacation);
เรียกใช้รหัสของเรา:
Initialized values. You are now on vacation. You are not on vacation anymore. false Initialized values. You are now on vacation. true
เราได้สร้างวัตถุสองชิ้นของคลาส Employee ของเรา:john และ ian ในโค้ดของเรา เราได้เริ่มต้นและสิ้นสุดการพักร้อนของ John แล้ว จากนั้น เราก็สร้างวัตถุให้เอียนและเริ่มพักร้อน
เมื่อเราพิมพ์ค่า john.isOnVacation
, คืนค่าเท็จ; เมื่อเราทำเช่นเดียวกันกับวัตถุของ Ian ค่า true จะถูกส่งกลับ นั่นเป็นเพราะว่าวัตถุแต่ละชิ้นในชั้นเรียนของเรานั้นแยกจากกัน พวกเขาใช้พิมพ์เขียวเดียวกัน แต่สามารถเก็บค่าของตนเองได้
บทสรุป
คลาสและอ็อบเจ็กต์เป็นรากฐานที่สำคัญของการเขียนโปรแกรมเชิงวัตถุ ชั้นเรียนช่วยให้คุณสามารถกำหนดพิมพ์เขียว ซึ่งคุณสามารถกำหนดวัตถุได้
คุณพร้อมสำหรับความท้าทายหรือไม่? สร้างโปรแกรมที่มีชั้นเรียนที่ติดตามข้อมูลเกี่ยวกับว่านักเรียนผ่านการทดสอบหรือไม่ มันควรจะ:
- จัดเก็บตัวแปรเพื่อติดตามว่านักเรียนผ่านการทดสอบหรือไม่
- มีสองวิธีที่เปลี่ยนว่านักเรียนผ่านการทดสอบหรือไม่
- หรือคุณอาจใช้คำสั่ง "if" เพื่อคำนวณว่าการทดสอบของนักเรียนควรได้รับการทำเครื่องหมายว่าผ่าน/ไม่ผ่านโดยพิจารณาจากเกรดที่เป็นตัวเลขหรือไม่
ตอนนี้คุณพร้อมที่จะเริ่มทำงานกับคลาสและอ็อบเจ็กต์ใน Java อย่างผู้เชี่ยวชาญแล้ว!