文章详情页
java - Map map = new HashMap<>这个是c++里面的运行期绑定?
问题描述
我个人理解,接口本质上是抽象类,依此理解的话,HashMap就是Map的子类对不对?所以以上语句会出现运行期绑定?还是我哪里理解错了?java子类可以重载父类的方法,而不overload那个方法?
问题解答
回答1:Java中, Map map = new HashMap() 是在编译期就通过类型推断绑定了, 可以看到这里已经显式的调用了 HashMap 的构造函数
重载是Overload, 而'子类可以重载父类的方法'是指Override, 叫做重写或者覆盖 https://en.wikipedia.org/wiki...
回答2:Java 的范性是编译时进行类型推断,不是运行时。
标签:
java
相关文章:
1. docker-compose中volumes的问题2. debian - docker依赖的aufs-tools源码哪里可以找到啊?3. docker网络端口映射,没有方便点的操作方法么?4. PHP中的$this代表当前的类还是方法?5. docker不显示端口映射呢?6. angular.js - angular内容过长展开收起效果7. golang - 用IDE看docker源码时的小问题8. python的MySQLdb包rollback对create语句无效吗?9. html - 这种错位的时间轴怎么布局,然后用css实现?10. javascript - 用swiper.js实现h5多篇文章滑动 点击文章跳转全文是另外的页面 点击返回滑动界面怎么定位到相应的swiper_slide
排行榜