我知道java.net.URL尝试解析URL; java.net.URI也这样做吗?

时间:2009-08-20 13:42:36

标签: java url uri

一个快速的谷歌没有找到明确的答案。如果URI确实这样做了,是否有广泛的第三方库不会这样做?我只需要一些解析,当构造函数尝试解析URI时,我不能有不可预测的延迟?

感谢。

4 个答案:

答案 0 :(得分:7)

来自URI javadoc

  

不执行主机查找(如果有),并且不构造依赖于方案的流处理程序。严格按照实例的字符内容定义等同,散列和比较。换句话说,URI实例只不过是一个结构化字符串,它支持比较,规范化,解析和相对化的语法,与方案无关的操作。

答案 1 :(得分:2)

答案 2 :(得分:2)

快速浏览URL代码并未显示它在构造上进行查找,而是在哈希码上进行查找。但是URI根本没有做到这一点(我可以看到)。

答案 3 :(得分:2)

不,它不会尝试解决任何问题,像URL的equals()那样阻塞。

您可以在JDK安装目录中查找文件 src.zip 。在那里查找类java.net.URI的源代码,你可以确切地看到它的作用。