คลาสและออบเจ็กต์ใน Java
คลาสและอ็อบเจ็กต์คืออะไร Java?
คลาสและออบเจ็กต์ใน Java เป็นองค์ประกอบพื้นฐานของ OOP มักจะมีความสับสนระหว่างคลาสและวัตถุ ในบทช่วยสอนนี้ เราพยายามบอกคุณถึงความแตกต่างระหว่างคลาสและออบเจ็กต์ Java. ก่อนอื่นเรามาทำความเข้าใจกันก่อนว่ามันคืออะไร
คลาสอยู่ในอะไร Java?
ชั้น คือพิมพ์เขียวหรือชุดคำสั่งสำหรับสร้างวัตถุประเภทหนึ่งโดยเฉพาะ เป็นแนวคิดพื้นฐานของการเขียนโปรแกรมเชิงวัตถุซึ่งเกี่ยวข้องกับเอนทิตีในชีวิตจริง Java กำหนดว่าวัตถุจะทำงานอย่างไรและวัตถุนั้นจะมีอะไรบ้าง
ไวยากรณ์ของคลาสใน Java
class <class_name>{ field; method; }
วัตถุในคืออะไร Java?
วัตถุ เป็นตัวอย่างของคลาส วัตถุใน OOPS เป็นเพียงส่วนประกอบที่เป็นอิสระซึ่งประกอบด้วยวิธีการและคุณสมบัติเพื่อทำให้ข้อมูลประเภทหนึ่งๆ มีประโยชน์ ตัวอย่างเช่น ชื่อสี ตาราง กระเป๋า การเห่า เมื่อคุณส่งข้อความไปยังวัตถุ คุณกำลังขอให้วัตถุเรียกใช้หรือดำเนินการวิธีการอย่างใดอย่างหนึ่งตามที่กำหนดไว้ในคลาส จากมุมมองการเขียนโปรแกรม วัตถุใน OOPS สามารถประกอบด้วยโครงสร้างข้อมูล ตัวแปร หรือฟังก์ชัน โดยจะได้รับการจัดสรรตำแหน่งหน่วยความจำ Java วัตถุได้รับการออกแบบมาให้เป็นลำดับชั้นของคลาส
ไวยากรณ์ของวัตถุใน Java
ClassName ReferenceVariable = new ClassName();
ความแตกต่างระหว่างวัตถุและคลาสในคืออะไร Java?
A ชั้น ในการเขียนโปรแกรมเชิงวัตถุคือพิมพ์เขียวหรือต้นแบบที่กำหนดตัวแปรและวิธีการ (ฟังก์ชัน) ที่เหมือนกันสำหรับทุกคน Java วัตถุมงคลบางชนิด.
An วัตถุ ใน OOPS เป็นตัวอย่างหนึ่งของชั้นเรียน วัตถุซอฟต์แวร์มักใช้เพื่อสร้างแบบจำลองวัตถุในโลกแห่งความเป็นจริงที่คุณพบในชีวิตประจำวัน
คลิก Good Farm Animal Welfare Awards หากไม่สามารถเข้าถึงวิดีโอได้
เข้าใจแนวคิดของ Java คลาสและออบเจ็กต์พร้อมตัวอย่าง
มาดูตัวอย่างการพัฒนาสัตว์เลี้ยงกัน ระบบการจัดการมีไว้สำหรับสุนัขโดยเฉพาะ คุณจะต้องมีข้อมูลต่างๆ เกี่ยวกับสุนัข เช่น สุนัขพันธุ์ต่างๆ อายุ ขนาด ฯลฯ
คุณต้องจำลองสิ่งมีชีวิตในชีวิตจริง เช่น สุนัข ให้กลายเป็นซอฟต์แวร์
ยิ่งไปกว่านั้น คำถามล้านดอลลาร์ก็คือ คุณจะออกแบบซอฟต์แวร์ดังกล่าวอย่างไร
นี่คือวิธีแก้ปัญหา - ก่อนอื่นมาทำแบบฝึกหัดกันก่อน คุณจะเห็นภาพสุนัขสามสายพันธุ์ด้านล่างนี้
หยุดที่นี่เดี๋ยวนี้! แสดงรายการความแตกต่างระหว่างพวกเขา
ความแตกต่างบางประการที่คุณอาจระบุไว้อาจเป็นสายพันธุ์ อายุ ขนาด สี ฯลฯ หากคุณลองคิดดูสักครู่ ความแตกต่างเหล่านี้ก็เป็นลักษณะทั่วไปของสุนัขเหล่านี้เช่นกัน ลักษณะเหล่านี้ (สายพันธุ์ อายุ ขนาด สี) สามารถสร้างสมาชิกข้อมูลสำหรับออบเจ็กต์ของคุณได้
ต่อไป แสดงรายการพฤติกรรมทั่วไปของสุนัขเหล่านี้ เช่น นอน นั่ง กิน ฯลฯ ดังนั้นสิ่งเหล่านี้จะเป็นการกระทำของออบเจ็กต์ซอฟต์แวร์ของเรา
จนถึงขณะนี้เราได้กำหนดสิ่งต่างๆ ดังต่อไปนี้
- ชั้น – สุนัข
- สมาชิกข้อมูล or วัตถุ– ขนาด อายุ สี พันธุ์ ฯลฯ
- วิธีการ– กิน นอน นั่ง และวิ่ง
ตอนนี้สำหรับค่าต่างๆ ของสมาชิกข้อมูล (ขนาดพันธุ์ อายุ และสี) Java คลาสคุณจะได้รับสิ่งของสุนัขที่แตกต่างกัน
คุณสามารถออกแบบโปรแกรมใดๆ ก็ได้โดยใช้แนวทาง OOPs นี้ เมื่อสร้างคลาส จะต้องปฏิบัติตามหลักการต่อไปนี้
- หลักการความรับผิดชอบเดียว (SRP)- ชั้นเรียนควรมีเหตุผลเดียวเท่านั้นที่จะเปลี่ยนแปลง
- เปิดความรับผิดชอบแบบปิด (OCP)- ควรจะขยายคลาสใดๆ ได้โดยไม่ต้องแก้ไข
- ความรับผิดชอบในการทดแทน Liskov (LSR)- คลาสที่ได้รับมาจะต้องสามารถทดแทนคลาสพื้นฐานได้
- หลักการผกผันการพึ่งพา (DIP) - ขึ้นอยู่กับนามธรรมไม่ใช่คอนกรีต
- หลักการแยกอินเทอร์เฟซ (ISP)- เตรียมอินเทอร์เฟซแบบละเอียดที่เฉพาะไคลเอ็นต์
คลาสและออบเจ็กต์ใน Java ตัวอย่างโปรแกรม
// Class Declaration public class Dog { // Instance Variables String breed; String size; int age; String color; // method 1 public String getInfo() { return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color); } public static void main(String[] args) { Dog maltese = new Dog(); maltese.breed="Maltese"; maltese.size="Small"; maltese.age=2; maltese.color="white"; System.out.println(maltese.getInfo()); } }
Output:
Breed is: Maltese Size is:Small Age is:2 color is: white
Java ตัวอย่างวัตถุและคลาส: คลาสภายนอกหลัก
ในโปรแกรมก่อนหน้านี้ เรากำลังสร้างเมธอด main() ภายในคลาส ตอนนี้เราสร้างคลาสและกำหนดวิธีการ main() ในอีกคลาสหนึ่ง นี่เป็นวิธีที่ดีกว่าครั้งก่อน
// Class Declaration class Dog { // Instance Variables String breed; String size; int age; String color; // method 1 public String getInfo() { return ("Breed is: "+breed+" Size is:"+size+" Age is:"+age+" color is: "+color); } } public class Execute{ public static void main(String[] args) { Dog maltese = new Dog(); maltese.breed="Maltese"; maltese.size="Small"; maltese.age=2; maltese.color="white"; System.out.println(maltese.getInfo()); } }
Output:
Breed is: Maltese Size is:Small Age is:2 color is: white
สรุป
- Java คลาสเป็นเอนทิตีที่กำหนดวิธีการ Java วัตถุจะทำงานและวัตถุใดบ้างที่จะมี
- A Java object เป็นองค์ประกอบที่มีอยู่ในตัวเองซึ่งประกอบด้วยวิธีการและคุณสมบัติเพื่อทำให้ข้อมูลบางประเภทมีประโยชน์
- ระบบคลาสอนุญาตให้โปรแกรมกำหนดคลาสใหม่ (คลาสที่ได้รับ) ในแง่ของคลาสที่มีอยู่ (ซูเปอร์คลาส) โดยใช้เทคนิคเช่น มรดกการเอาชนะและการเพิ่มพูน