给出了Java中同一个类的两个方法:
public void doSomething( Person person );
public void doSomething( Employee employee );
Run Code Online (Sandbox Code Playgroud)
哪里
Employee extends Person
Run Code Online (Sandbox Code Playgroud)
如果我打电话:
doSomething( employee )
Run Code Online (Sandbox Code Playgroud)
我发现它doSomething( Person )被调用了.
我原本期望调用最接近的匹配合约的重载,而不是最抽象的(这是我发现的)
有人能解释为什么吗?