บทความนี้ส่วนใหญ่ศึกษาความเท่าเทียมกันของอินสแตนซ์และชั้นเรียนใน Java ดังนี้
ตัวดำเนินการอินสแตนซ์ของ Java ใช้เพื่อระบุว่าวัตถุเป็นอินสแตนซ์ของคลาสเฉพาะที่รันไทม์หรือไม่ Instanceof ระบุว่าวัตถุนั้นเป็นอินสแตนซ์ของคลาสนี้หรือคลาสย่อยโดยส่งคืนค่าบูลีน
ตัวอย่างที่ 1 (อินสแตนซ์ของ)
คนอินเทอร์เฟซ
บุคคลอินเทอร์เฟซสาธารณะ {โมฆะสาธารณะ Eat ();}ใช้ชั้นเรียนคน
คนชั้นเรียนสาธารณะใช้บุคคล {ส่วนตัว int a = 0; @Override โมฆะสาธารณะ Eat () {system.out.println ("========"+a); -subclass xiaoming:
คลาสสาธารณะ Xiaoming ขยายคน {ชื่อสตริงส่วนตัว; @overridepublic เป็นโมฆะ Eat () {system.out.println ("+++++++++++");}}ฟังก์ชั่นหลัก
โมฆะคงที่สาธารณะหลัก (สตริง [] args) {คน p = คนใหม่ (); Xiaoming x = ใหม่ xiaoming (); System.out.println (p person of person); System.out.println (P อินสแตนซ์ของ Xiaoming); ----- 2 System.out.println (x อินสแตนซ์ของบุคคล); System.out.println (X Instanceof People); -หมายเหตุ: รหัสใน 2 ข้างต้นจะไม่รายงานข้อผิดพลาดระหว่างการรวบรวม
ผลการทำงาน:
TrueFalsettrue
ตัวอย่างที่ 2
แพ็คเกจ com.test.class_obj; ฐานคลาส {} คลาสที่ได้รับขยายฐาน {} คลาสสาธารณะ Familyvsexacttype {การทดสอบโมฆะคง X.GetClass (). GetSimplename ()); System.out.println ("------------------------------------------------------------------------------------------------------------------------------------------------------------------ - base)); system.out.println ("x อินสแตนซ์ที่ได้รับ" + (x อินสแตนซ์ของ ได้รับ)); System.out.println ("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - Derived.class.isinstance (x)); System.out.println ("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - (x.getClass (). เท่ากับ (base.class))); system.out.println ("x.getclass (). เท่ากับ (derived.class))" (x.getClass (). เท่ากับ (derived.class))); system.out.println ("**************************************************************************************************************** {ทดสอบ (ฐานใหม่ ()); ทดสอบ (ใหม่ที่ได้รับ ());}}เนื้อหาผลลัพธ์มีดังนี้:
การทดสอบประเภท x ฐาน---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - เท็จ *************************************************************************************************************************** ได้มา ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ - base.class falsesex.getclass () == derived.class trueex.getClass (). เท่ากับ (base.class)) Falsesex.getClass (). เท่ากับ (derived.class)) จริง *************************************************************************************************************************************************************************************************************************************** รหัสออก 0
ผ่านการทดสอบข้างต้นข้อสรุปต่อไปนี้สามารถวาดได้:
สรุป
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้เกี่ยวกับตัวอย่างรหัสเทียบเท่าของอินสแตนซ์และคลาสใน Java ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน เพื่อนที่สนใจสามารถอ้างถึงหัวข้ออื่น ๆ ที่เกี่ยวข้องในเว็บไซต์นี้ต่อไป หากมีข้อบกพร่องใด ๆ โปรดฝากข้อความไว้เพื่อชี้ให้เห็น ขอบคุณเพื่อนที่ให้การสนับสนุนเว็บไซต์นี้!