หัวใจหลักของการเขียนโปรแกรมแบบวัตถุ (Object-Oriented Programming - OOP) คือการสร้างโครงสร้างหรือแบบจำลองที่จะนำไปใช้ในการจัดการกับข้อมูลและฟังก์ชันที่เกี่ยวข้องในรูปแบบของวัตถุ (Objects). หลักการ OOP ที่สำคัญอย่างหนึ่งคือการซ่อนข้อมูลหรือ Encapsulation ที่เราจะมาพูดถึงกันในบทความนี้
Encapsulation เป็นหลักการหนึ่งใน OOP ที่มีจุดประสงค์เพื่อจำกัดการเข้าถึงโดยตรงไปยังข้อมูลภายในวัตถุหรือคลาส. คลาสมักจะมีสองส่วนหลัก คือ attributes (สถานะ) และ methods (พฤติกรรม). Encapsulation ช่วยให้เราสามารถปกป้องข้อมูล (attributes) จากการเข้าถึงหรือการเปลี่ยนแปลงโดยไม่ได้รับอนุญาต โดยจะเข้าถึงข้อมูลเหล่านั้นผ่าน methods (getters และ setters).
ในภาษา Java, encapsulation มักจะถูกประยุกต์ใช้ผ่านการตั้งค่าการเข้าถึงของ attributes เป็น `private`. และให้การเข้าถึงผ่าน `public` methods ที่ถูกสร้างขึ้นเพื่อการนั้นโดยเฉพาะ.
ตัวอย่างโค้ด:
public class Employee {
// Encapsulated Data Members
private String name;
private int salary;
// Constructor
public Employee(String name, int salary) {
this.name = name;
this.salary = salary;
}
// Public Getter Method
public String getName() {
return name;
}
// Public Setter Method
public void setSalary(int salary) {
// Adding simple validation before setting the salary
if (salary >= 30000 && salary <= 200000) {
this.salary = salary;
} else {
System.out.println("Error: Invalid salary!");
}
}
public void displayEmployeeDetails() {
System.out.println("Employee Name: " + getName());
System.out.println("Employee Salary: " + salary);
}
}
ในตัวอย่างด้านบน, `name` และ `salary` ถูกเก็บเป็น `private` ซึ่งหมายความว่าพวกมันไม่สามารถถูกเข้าถึงโดยตรงจากนอกคลาสได้. เราจำเป็นต้องใช้ getters และ setters เพื่อเข้าถึงข้อมูลเหล่านั้น.
Usecase ที่ 1: ธนาคาร
ในระบบธนาคาร, บัญชีลูกค้ามีการใช้ encapsulation โดยข้อมูลอย่างยอดเงินต้องไม่เปิดเผยหรือสามารถแก้ไขได้โดยไม่รับอนุญาต. เมธอดเช่น `deposit` และ `withdraw` ถูกใช้เพื่อจัดการกับการเคลื่อนไหวของเงินตามกฎระเบียบที่กำหนด.
Usecase ที่ 2: ระบบการจัดการพนักงาน
ในระบบการจัดการพนักงาน, ข้อมูลของพนักงานเช่นเงินเดือน, ประสบการณ์การทำงาน และประเภทการจ้างงานเป็นข้อมูลส่วนตัวที่ต้องได้รับการปกป้อง. Methods อย่าง `updateExperience` หรือ `setEmployeeType` อาจถูกใช้เพื่อการเปลี่ยนแปลงที่ควบคุมอย่างรอบคอบ.
Encapsulation เป็นหลักการที่สำคัญใน OOP ที่ช่วยให้เราจัดการกับข้อมูลภายในของวัตถุได้อย่างปลอดภัยและได้มาตรฐาน. ผู้เขียนโปรแกรมควรใช้หลักการนี้เพื่อสร้างซอฟต์แวร์ที่มีความน่าเชื่อถือและง่ายต่อการบำรุงรักษา. ที่ EPT, หรือ Expert-Programming-Tutor, เราสอนทักษะนี้ผ่านหลักสูตรที่เข้มข้นและเน้นการปฏิบัติด้วยโค้ดของจริง หากคุณต้องการฝึกฝนและปรับปรุงทักษะการเขียนโปรแกรมของคุณ เข้าร่วมกับเราได้ที่ EPT และเรียนรู้ที่จะเขียนโค้ดที่ปลอดภัยและมีประสิทธิภาพ.
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
Tag ที่น่าสนใจ: encapsulation oop object-oriented_programming java attributes methods getters setters data_encapsulation private_attributes public_methods employee_class encapsulation_in_java usecase real-world_example
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com