PHP面向对象如何模拟其他面向对象语言中的长尾词特性?
- 内容介绍
- 相关推荐
本文共计957个文字,预计阅读时间需要4分钟。
原文示例:本文字例讲述了PHP模拟一般面向对象语言中的方法重载(overload)。分享给大 家参考,具体如下:
在一般的面向对象设计语言(如C++、Java)中的方法重载就是定义相同的方法名,但参数类型或数量不同。
本文实例讲述了PHP模拟一般面向对象语言中的方法重载(overload)。分享给大家供大家参考,具体如下:
在一般的面向对象设计语言(如C++,Java)中的方法重载就是定义相同的方法名,通过“参数的个数”不同或“参数的类型”不同,来访问我们的相同方法名的不同方法。但是PHP 中,方法是不能重载的,因为PHP 是弱类型的语言,所以在方法的参数中本身就可以接收不同类型的数据,又因为PHP 的方法可以接收不定个数的参数,所以通过传递不同个数的参数调用不相同方法名的不同方法也是不成立的。所以在PHP 里面没有传统上的重载(overload)方法,但由于php其灵活性,可以模拟一般面向对象语言中的重载方法。
在PHP中模拟一般面向对象语言中的方法重载(overload)
首先来看一个例子:
<?php /* 重写/覆盖 override 指:子类重写了父类的同名方法 重载: overload 指:存在多个同名方法,但参数类型/个数不同. 传不同的参数,调用不同的方法。 但是在PHP中,不允许存在多个同名方法。 因此,不能够完成java,c++中的这种重载。
本文共计957个文字,预计阅读时间需要4分钟。
原文示例:本文字例讲述了PHP模拟一般面向对象语言中的方法重载(overload)。分享给大 家参考,具体如下:
在一般的面向对象设计语言(如C++、Java)中的方法重载就是定义相同的方法名,但参数类型或数量不同。
本文实例讲述了PHP模拟一般面向对象语言中的方法重载(overload)。分享给大家供大家参考,具体如下:
在一般的面向对象设计语言(如C++,Java)中的方法重载就是定义相同的方法名,通过“参数的个数”不同或“参数的类型”不同,来访问我们的相同方法名的不同方法。但是PHP 中,方法是不能重载的,因为PHP 是弱类型的语言,所以在方法的参数中本身就可以接收不同类型的数据,又因为PHP 的方法可以接收不定个数的参数,所以通过传递不同个数的参数调用不相同方法名的不同方法也是不成立的。所以在PHP 里面没有传统上的重载(overload)方法,但由于php其灵活性,可以模拟一般面向对象语言中的重载方法。
在PHP中模拟一般面向对象语言中的方法重载(overload)
首先来看一个例子:
<?php /* 重写/覆盖 override 指:子类重写了父类的同名方法 重载: overload 指:存在多个同名方法,但参数类型/个数不同. 传不同的参数,调用不同的方法。 但是在PHP中,不允许存在多个同名方法。 因此,不能够完成java,c++中的这种重载。

