So sánh abstract class và interface

     

Cả Abstract class và Interface phần đông được sử dụng để đã có được sự trừu tượng nơi bạn có thể khai báo các phương thức trừu tượng. Cả Abstract class cùng Interface hầu hết không thể được khởi tạo.

Bạn đang xem: So sánh abstract class và interface

Nhìn chung, chúng rất giống nhau, nhưng có rất nhiều điểm khác biệt giữa Abstract class với Interface khiến cho nó được thực hiện ở đầy đủ trường hợp khác nhau.


*

Abstract classInterface
1) Abstract class rất có thể có phương thức trừu tượng hoặc ko trừu tượng.Interface chỉ rất có thể có thủ tục trừu tượng. Trường đoản cú Java 8, nó có thể có cách thức default và static
2) Abstract classkhông cung cấp đa kế thừaInterfacehỗ trợ đa kế thừa
3) Abstract có thể có biến final, non-final, static và non-static.Interface chỉ hoàn toàn có thể có đổi mới static cùng final
4) Abstract classcó thể cung cấp khai triển cụ thể cho interface.Interface không thể hỗ trợ khai triển rõ ràng cho abstract class.

Xem thêm: Cách In Văn Bản Trong Excel 2010, 2007, 2003, 2013, 2016, Please Wait

5) trường đoản cú khóa abstract được áp dụng để tư tưởng abstract classTừ khóa interface được thực hiện để định nghĩa interface
6) Một abstract class rất có thể extend Java class với implements các interfaceMột interface chỉ rất có thể extends Java interface khác.
7) Một abstract class có thể được mở rộng bằng từ bỏ khóa extendsMột interface hoàn toàn có thể khai triển bằng từ khóa implements
8) Một abstract class hoàn toàn có thể có các thành viên trong lớp như private, protected …Các member của interface mang định là public static final
9) Ví dụ:public abstract class Hinh public abstract void veHinh();Ví dụ:public interface Ve void veHinh();

Sự biệt lập đơn giản, abstract class hoàn toàn có thể đạt được trừu tượng 1 phần (0 mang đến 100%) trong lúc interface đã đạt được mức trừu tượng trọn vẹn (100%).

Ghi chú: nếu bạn đang tích cực học Java, KHÓA HỌC LẬP TRÌNH JAVA với sự hướng dẫn của chuyên gia doanh nghiệp này chắc chắn là sẽ giúp cho bạn học tập nhanh hơn, chuyên nghiệp hóa hơn.

Ví dụ về Abstract class cùng Interface trong JAVA

Hãy xem một ví dụ đơn giản và dễ dàng trong đó họ đang thực hiện cả interface và lớp trừu tượng.

Xem thêm: Đề Thi Vào Lớp 10 Môn Văn 2018, Chuyên Lê Hồng Phong (Có Đáp Án)

// Creating interface that has 4 methods interface A void a(); // mang định là public abstract void b(); void c(); void d(); // tạo nên abstract method và hỗ trợ khai triển cho một cách làm của A abstract class B implements A public void c() System.out.println("Tôi là C"); // tạo thành class nhỏ của Abstract class B và hỗ trợ khai triển rõ ràng cho các phương thức còn lạiclass M extends B public void a() System.out.println("Tôi là a"); public void b() System.out.println("Tôi là b"); public void d() System.out.println("Tôi là d"); // sản xuất class demo nghiệm cùng thử gọi cách làm của interface A class Test public static void main(String args<>) A a = new M(); a.a(); a.b(); a.c(); a.d(); Kết quả:

Tôi là aTôi là bTôi là CTôi là d

Tổng kết

Như vậy là trong với viết này bản thân đã giúp đỡ bạn tìm hiểu rõ sự không giống nhau của Abstract class cùng Interface trong Java.