Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果我不';在PHP中不使用接口?_Php_Oop_Interface - Fatal编程技术网

如果我不';在PHP中不使用接口?

如果我不';在PHP中不使用接口?,php,oop,interface,Php,Oop,Interface,如果我在PHP OOP中不使用接口怎么办?它们只是功能声明,根本没有实现!如果我不使用接口,那么会发生什么 我不知何故无法在PHP中使用它。假设有很多种密钥,比如AES、DES、RSA、EC等。它们有很多不同的属性,也有一些共同的属性 因此,您声明名为AES、DES等的类,因为它们具有公共属性,(比如getKeyValue(),setKeyValue()),所以您的每个键类都有这两个公共方法 现在,您将要实现一些东西(比如一个准备一个键并返回它的函数),您不知道哪个键会出现(或者您将返回哪个键)

如果我在PHP OOP中不使用接口怎么办?它们只是功能声明,根本没有实现!如果我不使用接口,那么会发生什么


我不知何故无法在PHP中使用它。

假设有很多种密钥,比如AES、DES、RSA、EC等。它们有很多不同的属性,也有一些共同的属性

因此,您声明名为AES、DES等的类,因为它们具有公共属性,(比如
getKeyValue()
setKeyValue()
),所以您的每个键类都有这两个公共方法

现在,您将要实现一些东西(比如一个准备一个键并返回它的函数),您不知道哪个键会出现(或者您将返回哪个键)

那你打算怎么处理这件事?声明所有这些密钥对象以接收未知密钥?像下面这样

AES aes = ...
DES des = ...
. 
.
.
EC ec = ... 
Key key = ... // this key object can hold all the keys
如果你只是做下面的事情呢

AES aes = ...
DES des = ...
. 
.
.
EC ec = ... 
Key key = ... // this key object can hold all the keys

这么简单,啊哈?该
是每个键(AES、DES bla bla)实现它的接口

叹息。。。总有一天你会知道我们在日常生活中也非常需要接口。如果你不使用接口,你的代码将导致服务器过热,引发核爆炸,摧毁你的主机提供商服务器场,摧毁一半的互联网,摧毁整个城市,使它在未来10000年内处于无线电活动状态且不适合居住因为你提出了一个有答案的问题,所以你获得了反对票。您不必使用接口。接口就是合同。在一个有很多代码与其他代码对话的世界里,我们必须制定一些规则。接口帮助我们设置这些规则。也许不仅仅是良好的实践,因为您还可以在接口中键入提示,尽管在PHP@halfer-注意,没问题。