Anh ơi, vì sao các layer ví dụ như controller và service cần giao tiếp nhau thông qua interface. Tại sao k dùng abstract class ạ. Ví dụ ta thường có IBookService rồi tiêm vào class controller mà k dùng abstract class ạ. Ở đây class chỉ implent 1 interface nên có thể dùng abstract class được mà
Share
có mấy lý do em ạ:
1. Trong java không cho phép đa thừa kế, nhưng cho phép implements nhiều interface nên nếu giả sử lớp service của anh thế này:
Thì sẽ không được. Như vậy thì sử dụng interface sẽ mềm dẻo hơn.
2. Dùng interface cũng code ngắn gọn hơn, bởi vì abstract class phải khai báo thêm
public
cho hàm public và thêm từ khoáabstract
thì mới không bị lỗi nên nó khá là dài dòng.