一个简单的类加载问题。

corner1988 2012-10-18 12:27:34
InputStream in=ConfigManager.class.getClassLoader().getResourceAsStream(configFile);

问题: 我不大能理解这句代码的意思,麻烦帮我解释下
为什么不能直接 class.getResourceAsStream
ClossLoader是个抽象类,方法没有实现,为什么可以直接调用方法呢
...全文
82 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lasfrost 2012-10-18
  • 打赏
  • 举报
回复
ClossLoader在JDK的API里没有,在jre的核心包jre\lib\rt.jar里
lasfrost 2012-10-18
  • 打赏
  • 举报
回复
Class类中没有getResourceAsStream方法。
ClossLoader是个抽象类,但实际返回的是ClossLoader类的实现类的实例,是由jvm初始化的,
System.out.println(ConfigManager.class.getClassLoader().getClass().getName());就可以看到jvm具体用到了那个ClossLoader。可以直接调用方法,因为多态。

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧