您的位置:首页技术文章
文章详情页

java - Map map = new HashMap<>这个是c++里面的运行期绑定?

【字号: 日期:2024-01-03 16:16:46浏览:31作者:猪猪

问题描述

我个人理解,接口本质上是抽象类,依此理解的话,HashMap就是Map的子类对不对?所以以上语句会出现运行期绑定?还是我哪里理解错了?java子类可以重载父类的方法,而不overload那个方法?

问题解答

回答1:

Java中, Map map = new HashMap() 是在编译期就通过类型推断绑定了, 可以看到这里已经显式的调用了 HashMap 的构造函数

重载是Overload, 而'子类可以重载父类的方法'是指Override, 叫做重写或者覆盖 https://en.wikipedia.org/wiki...

回答2:

Java 的范性是编译时进行类型推断,不是运行时。

标签: java
相关文章: