Java中URI 和 URL 的区别
URI 和 URL 的区别
文章目录
- URI 和 URL 的区别
- 1. URI
- 2. URL
- 3. 总结
参考文章:https://blog.csdn.net/zcc7up/article/details/73551250
1. URI
表示一个 统一资源标识符 引用,Uniform Resource Identifiers
① URI
提供一个 toURL()
方法将 URI
转化成一个 URL
,如果转换不成功会抛出 MalformedURLException
或者在执行过程中可能会抛出: IllegalArgumentException
。
② URI
实现了 Serializable
和 Comparable
接口,由此看来 URI
是可以被序列化的,并且需要提供 Comparable
接口的 compareTo
方法。
③ 一个URI有九个组成部分:
2. URL
代表一个 统一资源定位符 ,Uniform Resource Locator,它是指向一个互联网 “ 资源 ” 的指针。互联网是关键,URL
指向的资源都是网络资源,所以它需要指定一个具体的协议。
① URL
可以通过 OpenConnection()
获得一个 URLConnection
对象,而 URLConnection
可以通过 connection()
等方法对网络资源进行操作。
3. 总结
① 都是 java.net
包下的。
② URL
是 URI
的一个子集,URL
是 URI
其中的一种。
③ URI
类在某些特定的情况下,会对其组成的字段执行转义。建议使用 URI
管理 URL
的编码和解码,并使用 URI.toURL()
和 URL.toURI()
进行转换。
按照官方给出的提示,我们按照以下的方式读取一个网络资源:
public static void main(String[] args) {URI uri = URI.create("http://www.baidu.com");URLConnection urlConnection = null;try {urlConnection = uri.toURL().openConnection();} catch (IOException e) {e.printStackTrace();}try {InputStream inputStream = urlConnection.getInputStream();InputStreamReader isr = new InputStreamReader(inputStream);char[] c = new char[1024];while (isr.read(c) != -1) {System.out.print(c);}} catch (IOException e) {e.printStackTrace();}
}
--->有问题请联系QQ1436281495^_^
Java中URI 和 URL 的区别相关推荐
- HTTP 协议入门 — (TCP/IP协议族、通信传输流、URI 与 URL 的区别、Cookie 状态管理、HTTP 支持的方法、状态码类别、HTTP 首部字段)
TCP/IP协议族 在介绍 HTTP 协议之前,我们先对 TCP/IP 协议族有个大概的了解,TCP/IP 协议从上到下主要分为应用层.传输层.网络层和数据链路层,各层的主要功能如下表所示: 协议层 ...
- JAVA语言-比较器Comparator(java中Comparable和Comparator的区别)
文章目录 一.什么是Comparator 二.Java compare方法和compareTo方法 三.java中Comparable和Comparator的区别 Comparator的例子 三.de ...
- URI与URL的区别与关系--通俗易懂
首先,URI是一种泛指的概念,URL是其具体的一种实现 URI:统一资源标识符.指的是一个可以用来唯一的标识一个资源的字符串,而不管其具体是用什么方式来实现唯一标识的.打个栗子,要在地球上唯一确定一个 ...
- java中的异常种类和区别以及处理机制和区别
java中的异常种类和区别以及处理机制和区别 按照异常需要处理的时机分为编译时异常(也叫强制性异常)也叫 CheckedException 和运行时异常(也叫非强制性异常)也叫 RuntimeExce ...
- java中ArrayList和LinkedList的区别
首先来看ArrayList和LinkedList的集成类和接口的区别.// lang java public class ArrayList<E> extends AbstractList ...
- java中Runnable和Callable的区别
文章目录 运行机制 返回值的不同 Exception处理 java中Runnable和Callable的区别 在java的多线程开发中Runnable一直以来都是多线程的核心,而Callable是ja ...
- java中wait和sleep的区别
文章目录 Wait和sleep的区别 唤醒wait和sleep java中wait和sleep的区别 在本篇文章中,我们将会讨论一下java中wait()和sleep()方法的区别.并讨论一下怎么使用 ...
- java throw与throws_基于Java中throw和throws的区别(详解)
系统自动抛出的异常 所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行. 语句抛出的异常 ...
- Java中重载和复写的区别
Java中重载和复写的区别 重载(overload) 复写(override) 区别和联系 重载(overload) 函数重载的最突出的例子就是类的构造函数,用户定义一个对象时可能会提供多种参数组合: ...
- Java中equals()方法和==的区别分析
Java中equals方法和==的区别分析 equals(Object obj)方法,将对象与传入的obj进行比较,相等返回true,否则返回false.equals方法和"==" ...
最新文章
- 该不该放弃嵌入式,单片机这条路?
- oracle11g与weblogic兼容,WebLogic 10.3.6与JDK 1.7的兼容问题
- 通过加载 QSS 文件的方式美化 QT 界面
- 快速排序算法javascript实现
- warning: function declaration isn’t a prototype解决方法
- 剑指offer-3 从尾到头打印链表
- 关于python学习路线
- SAP Hybris install.bat工作原理分析
- python与材料计算公式_《从问题到程序:用Python学编程和计算》——2.11 补充材料-阿里云开发者社区...
- 淮阴工学院计算机学院机房,实验室开放
- Kali Linux 从入门到精通(八)-主动信息收集
- iphone储存空间系统怎么清理_系统项占用了 iPhone 过多的储存空间怎么办?
- 简易OA漫谈之工作流设计(五,直接上级)
- 样本不均衡的解决方法
- [Spring cloud 一步步实现广告系统] 5. 投放系统配置+启动+实体类
- 求n个连续自然数之和为一个非负整数的数组
- 联盟链之hyperledger-fabric
- 【Netty之进阶篇】
- 关于计算机的网络小说,“80后”从维熙:熟练电脑写作 关注网络文学
- c++游戏服务器方向需要多少功底?