好的,请看看:
NSString
这会抛出class MyParent
{
public function myF($one, $two, $three)
{
}
}
class MyChild extends MyParent
{
public function myF($one)
{
}
}
- 这是由于弱类型语言中没有重载支持,但好的副作用是它强制执行LSP。 没问题。
让我感到困惑的是,即使\Exception's own __construct() takes three argument,以下代码也不会引发同样的错误:
Strict standards: Declaration of MyChild::myF() should be compatible with MyParent::myF()
为什么?为什么异常行为不同?这是在php.net网站上正式记录的吗?