Skip to main content

Kế thừa giao diện là gì?

Kế thừa giao diện là một cơ chế trong một số ngôn ngữ máy tính trong đó các chức năng cụ thể được kế thừa bởi một lớp, và sau đó lớp cụ thể đó phải cung cấp các triển khai cho các chức năng đó để hoàn thành.Các giao diện chỉ tồn tại trong một số ngôn ngữ lập trình hướng đối tượng nhất định.Chúng có thể được sử dụng để mô phỏng nhiều kế thừa trong khi không thực sự cho phép một lớp nhân kế, bởi vì thường không có giới hạn đối với số lượng giao diện mà một lớp có thể kế thừa.Ngoài các phương thức không được thực hiện, các giao diện cũng có thể bao gồm các hằng số công cộng. Trong kế thừa giao diện, đối tượng kế thừa các cuống phương thức và hằng số được coi là một loại đối tượng giao diện.Vì vậy, nếu lớp X được kế thừa từ giao diện y, bất kỳ trường hợp nào của lớp X cũng sẽ là một thể hiện của lớp Y. Điều này trở nên phức tạp hơn khi kế thừa giao diện lớp liên quan đến nhiều giao diện riêng biệt.Đối với mỗi giao diện bổ sung được kế thừa, lớp kết quả có thể được sử dụng hợp pháp như một ví dụ của mỗi lớp.Nếu một lớp được kế thừa từ mười giao diện khác nhau, các đối tượng của lớp đó có thể được sử dụng như một ví dụ của mười một đối tượng khác nhau, bao gồm cả chính nó.

inher Kế thừa phức tạp như vậy thường không cần thiết.Kế thừa giao diện được sử dụng để đảm bảo rằng một lớp có một tập hợp các hành vi cần thiết và các hành vi này cho phép nó thực hiện nhiều chức năng mà nó không thể làm được.Một ví dụ phổ biến về điều này là giao diện ActionListener trong Java, yêu cầu một lớp chỉ thực hiện một phương thức cụ thể.Việc thực hiện thành công phương thức này cho phép người dùng kiểm soát các nút, mục menu hoặc bất kỳ đối tượng cửa sổ nào khác trong lớp nếu muốn.Kế thừa giao diện là một cách tương đối đơn giản để thêm chức năng phức tạp vào một lớp mà không phải lo lắng về các vấn đề kế thừa phức tạp nhất. Một trong những lợi thế lớn nhất đối với việc sử dụng kế thừa giao diện là nó cho phép sử dụng các đối tượng cụ thể theo nghĩa chung.Vì một lớp thực hiện giao diện là một thể hiện của giao diện đó, nên nó có thể được sử dụng bất kỳ nơi nào một thể hiện của giao diện đó là bắt buộc.Ví dụ: nếu lớp A thực hiện lớp C và lớp B cũng thực hiện lớp C, nếu một phương thức lấy tham số, một thể hiện của lớp C.Các giao diện không thể tự mình khởi tạo vì chúng không hoàn thành, vì vậy sẽ không bao giờ có một đối tượng hoàn toàn là một thể hiện của lớp C như một tham số.