Friday, March 13, 2020

Java Hướng Đối Tượng: Interface trong java

Một Interface trong Java là một bản thiết kế của một lớp nó mang lại những lợi ích trong việc thiết kế và sử dụng các phương thức của tính trừu tượng, Một Interface là một kiểu tham chiếu trong Java. Nó tương tự như lớp học. Nó là một tập hợp các phương pháp trừu tượng. Một lớp thực hiện một Interface, do đó kế thừa các phương thức trừu tượng của giao diện.
Interface trong java

Cùng với các phương thức trừu tượng, một Interface java cũng có thể chứa các hằng số, phương thức mặc định, phương thức tĩnh và các kiểu lồng nhau. Các thân phương thức chỉ tồn tại cho các phương thức mặc định và các phương thức tĩnh.

Trong java Interface tương tự như viết một lớp. Nhưng một lớp mô tả các thuộc tính và hành vi của một đối tượng. Và một Interface chứa các hành vi mà một lớp thực hiện.
Trừ khi lớp thực hiện Interface là trừu tượng, tất cả các phương thức của Interface cần được xác định trong lớp.

Đặc điểm của Interface như sau:


  • Một interface có thể chứa bất kỳ số lượng Method.
  • Một interface được viết trong một tệp có phần mở rộng .java, với tên của interface khớp với tên của tệp.
  • Mã byte của một interface hiện trong tệp. Class.
  • Các interface xuất hiện trong các gói và tệp mã byte tương ứng của chúng phải nằm trong cấu trúc thư mục khớp với tên gói.

Tuy nhiên, một Interface có đặc điểm khác với class, bao gồm


  • Bạn không thể Contructor một Interface.
  • Một Interface không chứa bất kỳ Contructor.
  • Tất cả các phương thức trong một Interface là trừu tượng.
  • Một Interface không thể chứa các trường thể hiện. Các trường duy nhất có thể xuất hiện trong Interface phải được khai báo static và public.
  • Một Interface không được kế thừa (Inheritance) bởi một lớp; nó được thực hiện bởi một lớp
  • Một Interface có thể kế thừa nhiều Interface.

Cấu trúc khai báo của interface
Từ khóa interface được sử dụng để khai báo của một interface, sau đây là một vị dụ minh họa
/* File name : HelloInterFace.java */
import java.lang.*;
public interface HelloInterFace {
}
Những thuộc tính của interface:
Một interface hoàn toàn trừu tượng. Bạn không cần sử dụng từ khóa abstract trong khi khai báo interface.
Mỗi phương thức trong một interface cũng hoàn toàn trừu tượng, do đó không cần từ khóa abstract.
Các phương thức trong một interface hoàn toàn public
Sau đây là một ví dụ thể hiện một class implements từ interface
class Mama implements  Animal{
@Override
public void eat() {
// TODO Auto-generated method stub
System.out.println("Dog rice");
}
@Override
public void move() {
// TODO Auto-generated method stub
System.out.println("Dog hand");
}
public void travel(){
System.out.println("Dog travel");
}
public int numberhand(){
return 0;
}
}
public class Dog{
public static void main(String args[]){
Mama mama = new Mama();
mama.eat();
mama.move();
mama.travel();
}
}
Sau đây là ví dụ interface kế thừa từ interface
// Filename: Sports.java
public interface Sports {
   public void setHomeTeam(String name);
   public void setVisitingTeam(String name);
}
// Filename: Football.java
public interface Football extends Sports {
   public void homeTeamScored(int points);
   public void visitingTeamScored(int points);
   public void endOfQuarter(int quarter);
}
// Filename: Hockey.java
public interface Hockey extends Sports {
   public void homeGoalScored();
   public void visitingGoalScored();
   public void endOfPeriod(int period);
   public void overtimePeriod(int ot);
}

No comments:

Post a Comment