ความแตกต่างระหว่างค่าสัมประสิทธิ์การดูดเลือดtracคลาสและอินเทอร์เฟซใน t Java
ความแตกต่างที่สำคัญระหว่าง ABStracคลาสและอินเทอร์เฟซใน t Java
- ในอินเทอร์เฟซ คลาสสามารถใช้งานอินเทอร์เฟซได้หลายตัว ในขณะที่คลาสสามารถสืบทอดได้เพียงหนึ่งอินเทอร์เฟซเท่านั้นtracคลาส t
- ใน Interface นั้นไม่มีตัวแก้ไขการเข้าถึง ทุกสิ่งที่กำหนดไว้ภายใน Interface จะถือว่ามีตัวแก้ไขแบบสาธารณะ ในขณะที่ Abs นั้น...tracคลาส t สามารถมีตัวแก้ไขการเข้าถึงได้
- อินเทอร์เฟซไม่สามารถมีฟิลด์ข้อมูลได้ ในขณะที่ค่าสัมบูรณ์tracคลาส t สามารถมีฟิลด์ข้อมูลได้
- อินเทอร์เฟซช่วยกำหนดความสามารถรอบข้างของคลาส ในขณะที่ abstracคลาส t กำหนดเอกลักษณ์ของคลาส
กล้ามเนื้อหน้าท้องคืออะไรtracชั้นเรียน t?
ชั้นเรียนที่มีกล้ามท้องtracคำหลัก t ในการประกาศเรียกว่า abstracคลาส t สัมบูรณ์tracคลาส t ควรมีค่า abs เป็นศูนย์หรือมากกว่าtract เมธอด เช่น เมธอดที่ไม่มีตัวเนื้อหา แต่สามารถมีเมธอดที่เป็นรูปธรรมได้หลายวิธี สัมบูรณ์tracคลาส t ช่วยให้คุณสร้างแบบแผนสำหรับคลาสที่เป็นรูปธรรมได้ แต่คลาสที่สืบทอดจะต้องใช้งานคุณสมบัติพื้นฐาน (absolute) ของคลาส t ด้วยtracวิธี t ค่าสัมบูรณ์tracคลาส t ไม่สามารถสร้างอินสแตนซ์ได้
เหตุผลสำคัญในการใช้อินเทอร์เฟซ
- อินเทอร์เฟซถูกนำมาใช้เพื่อให้บรรลุ เอบีเอสtracการ.
- ออกแบบมาเพื่อรองรับการแก้ไขวิธีการแบบไดนามิก ณ รันไทม์
- ช่วยให้คุณบรรลุการมีเพศสัมพันธ์ที่หลวม
- ช่วยให้คุณสามารถแยกคำจำกัดความของวิธีการออกจากลำดับชั้นการสืบทอด
เหตุผลสำคัญที่ควรใช้ ABStracคลาส t
- abstracคลาส t จะมีฟังก์ชันการทำงานเริ่มต้นสำหรับคลาสย่อย
- จัดทำเทมเพลตสำหรับชั้นเรียนเฉพาะในอนาคต
- ช่วยคุณกำหนดอินเทอร์เฟซทั่วไปสำหรับคลาสย่อย
- abstracคลาส t ช่วยให้สามารถนำโค้ดกลับมาใช้ซ้ำได้
อินเทอร์เฟซคืออะไร?
อินเทอร์เฟซคือแบบพิมพ์เขียวที่สามารถนำไปใช้ในการสร้างคลาสได้ อินเทอร์เฟซไม่มีเมธอดที่เป็นรูปธรรม (เมธอดที่มีโค้ด) เมธอดทั้งหมดในอินเทอร์เฟซเป็นค่าสัมบูรณ์tracเมธอด t อินเทอร์เฟซไม่สามารถสร้างอินสแตนซ์ได้ อย่างไรก็ตาม คลาสที่ใช้งานอินเทอร์เฟซสามารถสร้างอินสแตนซ์ได้ อินเทอร์เฟซไม่เคยมีตัวแปรอินสแตนซ์ แต่สามารถมีตัวแปรสาธารณะแบบ static final (เช่น ตัวแปรคงที่ของคลาส) ได้
ความแตกต่างระหว่าง Interface และ Abstracคลาส t ใน Java
กล้ามท้องtracคลาสอนุญาตให้คุณสร้างฟังก์ชันการทำงานที่คลาสย่อยสามารถนำไปใช้หรือเขียนทับได้ ในขณะที่อินเทอร์เฟซอนุญาตให้คุณระบุฟังก์ชันการทำงานเท่านั้น แต่ไม่สามารถนำไปใช้งานจริงได้ คลาสสามารถสืบทอดจากคลาสพื้นฐานได้เพียงหนึ่งคลาสเท่านั้นtracคลาสหนึ่งๆ สามารถใช้งานอินเทอร์เฟซได้หลายตัว
| พารามิเตอร์ | อินเตอร์เฟซ | abstract-class |
|---|---|---|
| ความเร็ว | ช้า | รวดเร็ว |
| มรดกหลายรายการ | ใช้อินเทอร์เฟซต่างๆ | กล้ามท้องเพียงข้างเดียวtract-class |
| โครงสร้าง | abstracวิธีการ t | abstracวิธีการที่เป็นรูปธรรมและสร้างสรรค์ |
| ควรใช้เมื่อไร | การปรับปรุงในอนาคต | เพื่อหลีกเลี่ยงความเป็นอิสระ |
| การสืบทอด/การนำไปปฏิบัติ | คลาสสามารถใช้หลายอินเทอร์เฟซได้ | คลาสนี้สามารถสืบทอดคุณสมบัติ Abs ได้เพียงหนึ่งเดียวเท่านั้นtracคลาส t |
| การใช้งานเริ่มต้น | ในขณะที่เพิ่มสิ่งใหม่ๆ ให้กับอินเทอร์เฟซ การค้นหา Implementors ทั้งหมดและ Implement สิ่งที่กำหนดไว้ใหม่ถือเป็นฝันร้าย | ในกรณีของ Abstracในคลาส t คุณสามารถใช้ประโยชน์จากการใช้งานเริ่มต้นได้ |
| ตัวแก้ไขการเข้าถึง | อินเทอร์เฟซไม่มีตัวแก้ไขการเข้าถึง ทุกอย่างที่กำหนดไว้ภายในอินเทอร์เฟซถือเป็นตัวแก้ไขสาธารณะ | abstracคลาส t สามารถมีตัวแก้ไขการเข้าถึงได้ |
| ควรใช้เมื่อไร | ควรใช้อินเทอร์เฟซเมื่อการใช้งานต่างๆ แชร์เฉพาะลายเซ็นวิธีการเท่านั้น ลำดับชั้นแบบโพลีมอร์ฟิกของประเภทค่า | ควรใช้เมื่อการใช้งานประเภทเดียวกันหลายอย่างมีพฤติกรรมร่วมกัน |
| เขตข้อมูล | อินเทอร์เฟซไม่สามารถมีช่องข้อมูลได้ | ชั้นเรียนสามารถมีเขตข้อมูลได้ |
| ค่าเริ่มต้นของการสืบทอดหลายรายการ | คลาสอาจใช้อินเทอร์เฟซมากมาย | คลาสจะสืบทอดค่า abs เพียงค่าเดียวเท่านั้นtracคลาส t |
| การดำเนินงาน | อินเทอร์เฟซคือ abstract ดังนั้นจึงไม่สามารถให้รหัสใดๆ ได้ | กล้ามท้องtracคลาส t สามารถให้โค้ดเริ่มต้นที่สมบูรณ์ ซึ่งควรถูกเขียนทับ |
| การใช้ตัวดัดแปลงการเข้าถึง | คุณไม่สามารถใช้ตัวแก้ไขการเข้าถึงสำหรับวิธีการ คุณสมบัติ ฯลฯ | คุณสามารถใช้กล้ามเนื้อหน้าท้องได้tracคลาส t ที่มีตัวแก้ไขการเข้าถึง |
| การใช้ | อินเทอร์เฟซช่วยในการกำหนดความสามารถต่อพ่วงของคลาส | กล้ามท้องtracคลาส t กำหนดเอกลักษณ์ของคลาส |
| ฟิลด์ที่กำหนด | ไม่สามารถกำหนดฟิลด์ได้ | กล้ามท้องtracคลาส t อนุญาตให้คุณกำหนดทั้งฟิลด์และค่าคงที่ได้ |
| มรดก | อินเทอร์เฟซสามารถสืบทอดหลายอินเทอร์เฟซได้ แต่ไม่สามารถสืบทอดคลาสได้ | กล้ามท้องtracคลาส t สามารถสืบทอดจากคลาสอื่นและอินเทอร์เฟซได้หลายรายการ |
| ตัวสร้างหรือตัวทำลาย | อินเทอร์เฟซไม่สามารถประกาศตัวสร้างหรือตัวทำลายได้ | กล้ามท้องtracคลาส t สามารถประกาศคอนสตรัคเตอร์และดีสตรัคเตอร์ได้ |
| ขีดจำกัดของส่วนขยาย | สามารถขยายอินเทอร์เฟซจำนวนเท่าใดก็ได้ | สามารถขยายได้เพียงคลาสเดียวหรือ abs เดียวเท่านั้นtracชั้นเรียน t ในแต่ละครั้ง |
| abstracคำหลัก t | ในช่องท้องtracคีย์เวิร์ด t interface เป็นตัวเลือกสำหรับการประกาศเมธอดเป็นแบบ abstract. | ในช่องท้องtracคลาส t, สัมบูรณ์tracคีย์เวิร์ด t เป็นสิ่งจำเป็นสำหรับการประกาศเมธอดเป็นแบบ abstract. |
| ประเภทคลาส | อินเทอร์เฟซสามารถมี abs สาธารณะได้เท่านั้นtracวิธีการ t | กล้ามท้องtracคลาส t มีสิทธิ์ในการคุ้มครองและสิทธิ์สาธารณะtracวิธีการ t |
ตัวอย่างโค้ดสำหรับ Interface และ Abstracคลาส t ใน Java
ต่อไปนี้เป็นตัวอย่างโค้ดสำหรับการสร้างอินเทอร์เฟซและค่าสัมบูรณ์tracคลาส t ใน Java
ไวยากรณ์อินเทอร์เฟซ
interface name{
//methods
}
Java ตัวอย่างอินเทอร์เฟซ:
interface Pet {
public void test();
}
class Dog implements Pet {
public void test() {
System.out.println("Interface Method Implemented");
}
public static void main(String args[]) {
Pet p = new Dog();
p.test();
}
}
abstracไวยากรณ์คลาส t
abstract class name{
// code
}
abstracตัวอย่างคลาส t:
abstract class Shape {
int b = 20;
abstract public void calculateArea();
}
public class Rectangle extends Shape {
public static void main(String args[]) {
Rectangle obj = new Rectangle();
obj.b = 200;
obj.calculateArea();
}
public void calculateArea() {
System.out.println("Area is " + (b * b));
}
}

