PHP 5.3方法重载(如在Java中)
发布时间:2020-12-13 17:08:04 所属栏目:PHP教程 来源:网络整理
导读:在 Java中,我们有一个方法重载功能,这对单身人士非常有用.例如,我有两个不同的getInstance方法,public static,根据收到的参数表现不同: public static Currency getInstance(String currencyCode)public static Currency getInstance(Locale locale) 我们可
在
Java中,我们有一个方法重载功能,这对单身人士非常有用.例如,我有两个不同的getInstance方法,public static,根据收到的参数表现不同:
public static Currency getInstance(String currencyCode) public static Currency getInstance(Locale locale) 我们可以用PHP做到这一点吗? 解决方法
您可以在运行时确定参数类型:
function getInstance($currency) { if (is_string($currency)) { $currency = lookupLokale($currency); } // do something with the $currency object } 在php5.3(用于非静态方法的php5.0)中,您还可以使用php的method overloading自己实现类似Java的语义.但是,OOP重载可能会产生混乱的代码,您应该更喜欢上面的方法内解决方案. 在大多数情况下,如果您只使用两个不同的方法名称,则更清楚. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |