Java - Liệt kê sự khác nhau giữa Interface và lớp Abstract (lớp trừu tượng).
Sau khi đã được tìm hiểu về Interface và lớp trừu tượng, bạn hãy liệt kê sự khác nhau giữa Interface và lớp Abstract (lớp trừu tượng) khi lập trình với hướng đối tượng trong Java.
Bài giải
-------------------- ######## --------------------
Trong Java, Interface và lớp trừu tượng có chung một số đặc tính nhưng chúng có điểm khác nhau như sau:
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
- Tất cả các phương thức trong Interface là phương thức trừu tượng, còn các phương thức trong lớp trừu tượng thì có thể là phương thức trừu tượng hoặc phương thức thông thường.
- Một lớp có thể implement nhiều Interface nhưng chỉ kế thừa được một lớp trừu tượng.
- Một lớp implement 1 Interface thì lớp đó phải định nghĩa lại tất cả các phương thức có trong Interface. Tuy nhiên, một lớp kế thừa từ lớp trừu tượng thì có thể không cần định nghĩa lại (override) các phương thức thông thường nhưng bắt buộc phải override lại các phương thức trừu tượng.
- Lớp trừu tượng có thể implement một Interface mà không cần định nghĩa lại bất kỳ phương thức nào của Interface đó.
- Các thành phần trong Interface mặc định là
public
, còn trong lớp trừu tượng thì có thể làpublic
,protected
hoặcprivate
.
Câu hỏi thường gặp liên quan:
- Java - Liệt kê sự khác nhau giữa Interface và lớp Abstract (lớp trừu tượng).
- Java - Interface và lớp trừu tượng được sử dụng trong những trường hợp nào?
- Java - Bạn hãy nêu lỗi của đoạn chương trình dưới đây và giải thích vì sao.
- Java - Hãy chọn đáp án thể hiện kết quả đúng của đoạn chương trình cho sẵn dưới đây (câu hỏi 1)
- Java - Hãy chọn đáp án đúng trong các đáp án cho sẵn của đoạn chương trình dưới đây (câu hỏi 2)