อะไรคือความแตกต่างระหว่างการขยายและการใช้งานใน Java?



บทความเกี่ยวกับการขยายและการใช้งานใน java นี้จะช่วยให้คุณเข้าใจว่าคำหลักทั้งสองนี้สามารถใช้เพื่อดำเนินการสืบทอดใน java ได้อย่างไร

คำหลัก ขยาย และ การดำเนินการ ทั้งสองใช้เพื่อดำเนินการตามแนวคิดการสืบทอดของ แต่มีความแตกต่างเล็กน้อยระหว่างพวกเขา บทความเกี่ยวกับการขยายและการใช้งานใน Java นี้จะช่วยให้คุณเข้าใจความแตกต่างที่สำคัญระหว่างคำหลักเหล่านี้

หัวข้อที่กล่าวถึงในบทความนี้ ได้แก่ :





เพื่อทำความเข้าใจไฟล์ความแตกต่างระหว่างการขยายและการดำเนินการคุณต้องเรียนรู้และเข้าใจไฟล์ ความแตกต่างระหว่าง คลาสนามธรรมและส่วนต่อประสาน ใน Java

ขยายคำหลัก



เมื่อคลาสย่อยขยายอีก ชั้นเรียน อนุญาตให้คลาสย่อยสืบทอด (เช่นใช้ซ้ำ) และแทนที่โค้ดที่กำหนดไว้ในซุปเปอร์ไทป์ กล่าวง่ายๆคือการใช้คำหลักขยายคลาสที่สร้างขึ้นใหม่ (คลาสย่อย) สามารถสืบทอดคุณสมบัติของคลาสที่มีอยู่ (คลาสระดับสูง) ได้ นอกจากนี้ยังสามารถแทนที่ กำหนดไว้ในซูเปอร์คลาส คลาสไม่สามารถขยาย superclass ได้มากกว่าหนึ่งคลาสใน Javaนี่คือไฟล์ แสดงคลาสนามธรรม:

package MyPackage คลาส A {String s A (String s1) {s = s1} void display () {System.out.println (s)}} class B ขยาย A {String l B (String s1, String s2) {super ( s1) l = s2} void display () {super.display () System.out.println (l)}} class ExtendsExample {public static void main (String args []) {A ob = new B ('Welcome', 'ถึง Edureka') ob.display ()}}

เอาท์พุต: ยินดีต้อนรับ
ถึง Edureka

คำอธิบาย: ในโค้ดด้านบนคุณสามารถสังเกตได้ว่าคลาส B ได้ขยายคลาส A มันมีการเข้าถึงเมธอด display () และได้ลบล้างเมธอด display () ที่กำหนดไว้ในคลาส A พลังอันยิ่งใหญ่นี้มาจากการใช้คีย์เวิร์ดขยาย



ใช้คำหลัก

เมื่อเรียนดำเนินการอินเทอร์เฟซจะต้องมีการใช้งานวิธีการทั้งหมดที่ประกาศไว้ในไฟล์ อินเตอร์เฟซ . หากชั้นเรียนไม่ต้องการให้มีการใช้งานก็สามารถประกาศตัวเองว่าเป็น ชั้นนามธรรม . นอกจากนี้อินเทอร์เฟซไม่สามารถใช้อินเทอร์เฟซอื่นได้เนื่องจากการใช้งานหมายถึงการกำหนดวิธีการและอินเทอร์เฟซมักจะมีวิธีการที่เป็นนามธรรมดังนั้นอินเทอร์เฟซจึงไม่สามารถใช้อินเทอร์เฟซอื่นได้นี่คือตัวอย่างโปรแกรมที่แสดงให้เห็นถึงคลาสนามธรรม:

package MyPackage interface XYZ {void display (String s) void show (int i)} class Demo ใช้ XYZ {public void show (int i) {System.out.println ('integer value:' + i)} การแสดงโมฆะสาธารณะ ( สตริง s) {System.out.println ('string value:' + s)}} class ImplementExample {public static void main (String args []) {XYZ d = new Demo () d.display ('TechDifferences') d .show (2)}}

เอาท์พุต:

ค่าสตริง: TechDifferences ค่าจำนวนเต็ม: 2

ในโค้ดด้านบนคุณสามารถสังเกตได้ว่าคลาส Demoใช้สองวิธีที่ประกาศในอินเทอร์เฟซ XYZ

จากเนื้อหาข้างต้นคุณอาจสังเกตเห็นความแตกต่างที่สำคัญระหว่างการขยายและการดำเนินการใน . ตอนนี้เรามาดูความแตกต่างอื่น ๆ กัน

ขยายเทียบกับการดำเนินการ

ตารางด้านล่างแสดงความแตกต่างที่สำคัญระหว่างคำหลักที่ขยายและการดำเนินการ

คุณสมบัติการเปรียบเทียบ ขยาย การดำเนินการ

การนำไปใช้

คลาสสามารถสืบทอดคลาสอื่นหรืออินเทอร์เฟซสามารถสืบทอดอินเตอร์เฟสอื่นโดยใช้คีย์เวิร์ดขยาย

คลาสสามารถใช้อินเทอร์เฟซโดยใช้การใช้คีย์เวิร์ด

วิธี

คลาสย่อยที่ขยายคลาสซูเปอร์คลาสอาจหรือไม่แทนที่เมธอดทั้งหมดในซูเปอร์คลาส

คลาสที่ใช้อินเทอร์เฟซต้องใช้วิธีการทั้งหมดของอินเทอร์เฟซนั้น

คลาส

คลาสสามารถขยายคลาสซูเปอร์คลาสได้เพียงคลาสเดียว

วิธีการแยกวิเคราะห์ไฟล์ xml ใน java

คลาสสามารถใช้อินเทอร์เฟซจำนวนเท่าใดก็ได้ในเวลาเดียวกัน

อินเตอร์เฟซ

อินเทอร์เฟซสามารถขยายอินเทอร์เฟซจำนวนเท่าใดก็ได้

อินเทอร์เฟซไม่สามารถใช้อินเทอร์เฟซอื่น ๆ ได้

ตอนนี้คุณคือความแตกต่างที่สำคัญระหว่างการขยายและการใช้งานใน

สิ่งนี้ทำให้เรามาถึงจุดสิ้นสุดของสิ่งนี้ขยายเทียบกับการใช้งานในบทความ Java เราได้ตรวจสอบความแตกต่างที่สำคัญระหว่างการขยายและการใช้คำหลัก สรุปได้ว่าทั้งสองใช้เพื่อดำเนินการแนวคิดการสืบทอดของ Java แต่แตกต่างกัน

ให้แน่ใจว่าคุณฝึกฝนให้มากที่สุดและเปลี่ยนประสบการณ์

ตรวจสอบไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก เราพร้อมที่จะช่วยเหลือคุณในทุกขั้นตอนในการเดินทางของคุณสำหรับการเป็นนอกเหนือจากคำถามสัมภาษณ์ java นี้เรามาพร้อมกับหลักสูตรที่ออกแบบมาสำหรับนักเรียนและมืออาชีพที่ต้องการเป็น Java Developer

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของ 'ขยายเทียบกับการใช้งานใน Java' และเราจะติดต่อกลับโดยเร็วที่สุด