Hướng dẫn what is interface in php with example? - giao diện trong php với ví dụ là gì?


PHP - Giao diện là gì?

Giao diện cho phép bạn chỉ định những phương thức nào mà một lớp nên thực hiện.

Các giao diện giúp dễ dàng sử dụng nhiều lớp khác nhau theo cùng một cách. Khi một hoặc nhiều lớp sử dụng cùng một giao diện, nó được gọi là "đa hình".

Các giao diện được khai báo với từ khóa interface:

Cú pháp

interface InterfaceName {
  public function someMethod1();
  public function someMethod2($name, $color);
  public function someMethod3() : string;
}
?>


PHP - Giao diện so với các lớp trừu tượng

Giao diện tương tự như các lớp trừu tượng. Sự khác biệt giữa các giao diện và các lớp trừu tượng là:

  • Các giao diện không thể có thuộc tính, trong khi các lớp trừu tượng có thể
  • Tất cả các phương thức giao diện phải được công khai, trong khi các phương thức lớp trừu tượng được công khai hoặc được bảo vệ
  • Tất cả các phương thức trong giao diện đều trừu tượng, vì vậy chúng không thể được thực hiện trong mã và từ khóa trừu tượng là không cần thiết
  • Các lớp có thể triển khai giao diện trong khi kế thừa từ một lớp khác cùng một lúc

PHP - Sử dụng giao diện

Để thực hiện giao diện, một lớp phải sử dụng từ khóa implements.

Một lớp thực hiện giao diện phải thực hiện tất cả các phương thức của giao diện.all of the interface's methods.

Thí dụ

interface Animal {
  public function makeSound();
}

Lớp mèo thực hiện động vật {& nbsp; hàm công khai () {& nbsp; & nbsp; & nbsp; tiếng vang "meow"; & nbsp; }}
  public function makeSound() {
    echo "Meow";
  }
}

$ animal = new Cat (); $ Animal-> makeOund ();?>
$animal->makeSound();
?>

Hãy tự mình thử »

Từ ví dụ trên, hãy nói rằng chúng tôi muốn viết phần mềm quản lý một nhóm động vật. Có những hành động mà tất cả các động vật có thể làm, nhưng mỗi con vật làm điều đó theo cách riêng của nó.

Sử dụng giao diện, chúng ta có thể viết một số mã có thể hoạt động cho tất cả các động vật ngay cả khi mỗi con vật cư xử khác nhau:

Thí dụ

// Interface definition
interface Animal {
  public function makeSound();
}

Lớp mèo thực hiện động vật {& nbsp; hàm công khai () {& nbsp; & nbsp; & nbsp; tiếng vang "meow"; & nbsp; }}
class Cat implements Animal {
  public function makeSound() {
    echo " Meow ";
  }
}

$ animal = new Cat (); $ Animal-> makeOund ();?>
  public function makeSound() {
    echo " Bark ";
  }
}

Hãy tự mình thử »
  public function makeSound() {
    echo " Squeak ";
  }
}

Từ ví dụ trên, hãy nói rằng chúng tôi muốn viết phần mềm quản lý một nhóm động vật. Có những hành động mà tất cả các động vật có thể làm, nhưng mỗi con vật làm điều đó theo cách riêng của nó.
$cat = new Cat();
$dog = new Dog();
$mouse = new Mouse();
$animals = array($cat, $dog, $mouse);

Sử dụng giao diện, chúng ta có thể viết một số mã có thể hoạt động cho tất cả các động vật ngay cả khi mỗi con vật cư xử khác nhau:
foreach($animals as $animal) {
  $animal->makeSound();
}
?>

Hãy tự mình thử »

Từ ví dụ trên, hãy nói rằng chúng tôi muốn viết phần mềm quản lý một nhóm động vật. Có những hành động mà tất cả các động vật có thể làm, nhưng mỗi con vật làm điều đó theo cách riêng của nó.

Sử dụng giao diện, chúng ta có thể viết một số mã có thể hoạt động cho tất cả các động vật ngay cả khi mỗi con vật cư xử khác nhau:

// lớp định nghĩa class Cat thực hiện động vật {& nbsp; hàm công khai () {& nbsp; & nbsp; & nbsp; tiếng vang "meow"; & nbsp; }}



Trong Java, một giao diện chỉ định hành vi của một lớp bằng cách cung cấp một loại trừu tượng. Là một trong những khái niệm cốt lõi của Java, sự trừu tượng, đa hình và nhiều kế thừa được hỗ trợ thông qua công nghệ này. Các giao diện được sử dụng trong Java để đạt được sự trừu tượng.

Giao diện đối tượng cho phép bạn tạo mã chỉ định phương thức nào một lớp phải thực hiện, mà không phải xác định cách thực hiện các phương thức này. Giao diện chia sẻ một không gian tên với các lớp và đặc điểm, vì vậy chúng không được sử dụng cùng tên.

Các giao diện được xác định theo cách tương tự như một lớp, nhưng với từ khóa interface thay thế từ khóa class và không có bất kỳ phương thức nào có nội dung của chúng được xác định.

Tất cả các phương thức được khai báo trong một giao diện phải được công khai; Đây là bản chất của một giao diện.

  • Trong thực tế, các giao diện phục vụ hai mục đích bổ sung:
  • Để cho phép các nhà phát triển tạo các đối tượng của các lớp khác nhau có thể được sử dụng thay thế cho vì chúng thực hiện cùng một giao diện hoặc giao diện. Một ví dụ phổ biến là nhiều dịch vụ truy cập cơ sở dữ liệu, nhiều cổng thanh toán hoặc các chiến lược bộ đệm khác nhau. Các triển khai khác nhau có thể được hoán đổi mà không yêu cầu bất kỳ thay đổi nào đối với mã sử dụng chúng.

Để cho phép một hàm hoặc phương thức chấp nhận và hoạt động trên một tham số phù hợp với giao diện, trong khi không quan tâm đến những gì đối tượng có thể làm hoặc cách nó được thực hiện. Các giao diện này thường được đặt tên như Iterable, Cacheable, Renderable hoặc vì vậy để mô tả tầm quan trọng của hành vi.

Ghi chú::

Các giao diện có thể được mở rộng như các lớp sử dụng toán tử mở rộng.

implements

Lớp thực hiện giao diện phải khai báo tất cả các phương thức trong giao diện với chữ ký tương thích.

Cảnh báo

Một lớp có thể triển khai hai giao diện xác định một phương thức có cùng tên, chỉ khi khai báo phương thức trong cả hai giao diện là giống hệt nhau.

Cảnh báo

Một lớp thực hiện giao diện có thể sử dụng một tên khác cho các tham số của nó so với giao diện. Tuy nhiên, kể từ Php 8.0, ngôn ngữ hỗ trợ các đối số có tên, có nghĩa là người gọi có thể dựa vào tên tham số trong giao diện. Vì lý do đó, chúng tôi khuyến nghị các nhà phát triển sử dụng cùng tên tham số giống như giao diện đang được triển khai.

Ghi chú::

Các giao diện có thể được mở rộng như các lớp sử dụng toán tử mở rộng.

Ghi chú::

Các giao diện có thể được mở rộng như các lớp sử dụng toán tử mở rộng.

implements0

Lớp thực hiện giao diện phải khai báo tất cả các phương thức trong giao diện với chữ ký tương thích.

Nó có thể cho các giao diện có hằng số. Hằng số giao diện hoạt động chính xác như hằng số lớp. Trước Php 8.1.0, chúng không thể bị ghi đè bởi một lớp/giao diện kế thừa chúng.

Ví dụ

implements1

implements2

implements3

Ví dụ về giao diện số 1

implements4

interface

implements6

Ví dụ #2 Giao diện có thể mở rộng

implements4

interface

implements9

Ví dụ #3 Di truyền giao diện nhiều

makeSound()0

class

makeSound()2

Ví dụ #4 Giao diện với hằng số

makeSound()3

makeSound()4

makeSound()5

Ví dụ #5 Giao diện với các lớp trừu tượng

makeSound()6

interface

makeSound()8

Ví dụ #6 mở rộng và thực hiện đồng thời

Một giao diện, cùng với các khai báo loại, cung cấp một cách tốt để đảm bảo rằng một đối tượng cụ thể chứa các phương thức cụ thể. Xem InstanceOf toán tử và khai báo loại.

Thanhn2001 tại gmail dot com

makeSound()9

interface0

interface1

interface2

11 năm trước

vcnbianchi ¶

interface3

10 tháng trước

Williebegoode tại Att Dot Net

interface4

interface5

interface6

Giao diện giải thích với ví dụ là gì?

Một giao diện là một mô tả về các hành động mà một đối tượng có thể làm ... ví dụ khi bạn lật công tắc đèn, đèn tiếp tục bật, bạn không quan tâm làm thế nào, chỉ là điều đó. Trong lập trình hướng đối tượng, một giao diện là một mô tả về tất cả các hàm mà một đối tượng phải có để trở thành "x".a description of the actions that an object can do... for example when you flip a light switch, the light goes on, you don't care how, just that it does. In Object Oriented Programming, an Interface is a description of all functions that an object must have in order to be an "X".

Tại sao giao diện được sử dụng trong PHP?

PHP - Giao diện là gì?Giao diện cho phép bạn chỉ định những phương thức nào mà một lớp nên thực hiện.Các giao diện giúp dễ dàng sử dụng nhiều lớp khác nhau theo cùng một cách.Khi một hoặc nhiều lớp sử dụng cùng một giao diện, nó được gọi là "đa hình".allow you to specify what methods a class should implement. Interfaces make it easy to use a variety of different classes in the same way. When one or more classes use the same interface, it is referred to as "polymorphism".

Giao diện giải thích là gì?

Nói chung, giao diện là một thiết bị hoặc một hệ thống mà các thực thể không liên quan sử dụng để tương tác.a device or a system that unrelated entities use to interact.

Giao diện là gì và tại sao nó được sử dụng?

Trong Java, một giao diện chỉ định hành vi của một lớp bằng cách cung cấp một loại trừu tượng.Là một trong những khái niệm cốt lõi của Java, sự trừu tượng, đa hình và nhiều kế thừa được hỗ trợ thông qua công nghệ này.Các giao diện được sử dụng trong Java để đạt được sự trừu tượng.