Trong bài viết này, chúng ta sẽ tìm hiểu sự khác biệt giữa từ khóa 'extends' và 'implements'.
Extends
- Class dùng làm base class, class khác kế thừa base class này
- Interface cũng có thể extends interface khác
- Một class chỉ extends được MỘT superclass
- Một interface có thể extends NHIỀU interface khác
- Subclass KHÔNG bắt buộc override tất cả method của superclass
Ví dụ Extends
class Super { ..... }
class Sub extends Super { ..... }
Implements
- Giúp class implement một interface
- Một class có thể implements NHIỀU interface cùng lúc
- Class implements interface BẮT BUỘC phải implement TẤT CẢ method của interface đó
- KHÔNG BAO GIỜ dùng để implement interface khác (interface dùng extends)
Ví dụ Implements
public interface Animal { }
public class Mammal implements Animal { }
public class Dog extends Mammal { }