top of page
Tuyen Nguyen

Interface và vài điều cần biết

Đã cập nhật: 30 thg 6, 2024

Hôm nay, hãy cùng nhau khám phá thế giới tuyệt vời của Interface trong Java. Nếu bạn đang nghi ngờ và tự hỏi Interface là gì, đừng lo, tôi sẽ giải thích cho bạn hiểu một cách đơn giản nhất có thể, với một ví dụ thú vị.


Interface là gì?

Được rồi, hãy tưởng tượng: bạn có một đống các class, và chúng đều cần làm một điều gì đó tương tự, nhưng không giống nhau hoàn toàn. Làm thế nào bạn có thể xử lý điều đó mà không phát điên? Interface là giải pháp! Hãy tưởng tượng interface như một bản thiết kế cho những method mà các class của bạn nên có. Chúng không quan tâm method hoạt động như thế nào, chỉ cần chắc chắn rằng chúng tồn tại.


Default Method và Abstract Method

Java 8 đã giới thiệu hai cải tiến đáng chú ý cho các interface: từ khóa "default" và "abstract".

  • Từ khóa "default" cho phép định nghĩa một phương thức mặc định trong interface, cho phép các lớp triển khai interface sử dụng phương thức này mà không cần phải ghi đè lên nó.

  • Trái lại, từ khóa "abstract" chỉ ra rằng một phương thức không có thân hàm (body) và các lớp triển khai interface phải cung cấp triển khai cho phương thức này.


Dưới đây là một ví dụ minh họa:


An example of the Interface
An example of the Interface

An example of the Interface
An example of the Interface

Trong ví dụ này:

  • Interface Vehicle chứa một phương thức mặc định start() và một phương thức trừu tượng accelerate().

  • Lớp Car triển khai interface Vehicle và cung cấp triển khai cụ thể cho phương thức accelerate(). Nó kế thừa triển khai mặc định của phương thức start().

  • Lớp Motorcycle cũng triển khai interface Vehicle. Nó ghi đè phương thức accelerate() mặc định và cung cấp triển khai cụ thể cho phương thức start().

  • Trong lớp Main, chúng ta tạo các phiên bản của Car Motorcycle và minh họa hành vi của chúng.


Wrapping It Up

And there you have it! Interfaces are like the secret sauce of Java programming. They help you organize your code, make it more flexible, and just overall cooler. So, next time you're building a Java project and things start getting messy, remember: interfaces got your back.

Commentaires


bottom of page