URI和URLConnection类的区别

(1) URI格式

通用资源标志符(Universal Resource Identifier, 简称"URI")

就Android平台而言,URI主要分三个部分:scheme, authority and path。其中authority又分为host和port。

格式如下:  scheme://host:port/path
举个实际的例子:
content://com.example.project:200/folder/subfolder/etc
\---------/  \-------------------------/ \---/ \--------------------------/
scheme                 host             port        path
                \--------------------------------/
                          authority

(1) URI和URLConnection类的区别

网络中的URL(Uniform Resource Locator)是统一资源定位符的简称。它表示Internet上某一资源的地址。通过URL我们可以访问Internet上的各种网络资源,比如最常见的WWW,FTP站点。 URL可以被认为是指向互联网资源的“指针”,通过URL可以获得互联网资源相关信息,包括获得URL的InputStream对象获取资源的信息,以及一个到URL所引用远程对象的连接URLConnection。 URLConnection对象可以向所代表的URL发送请求和读取URL的资源。通常,创建一个和URL的连接,需要如下几个步骤:

① 创建URL对象,并通过调用openConnection方法获得URLConnection对象;

② 设置URLConnection参数和普通请求属性;

③ 向远程资源发送请求;

④ 远程资源变为可用,程序可以访问远程资源的头字段和通过输入流来读取远程资源返回的信息。

URLConnection 是封装访问远程网络资源一般方法的类,通过它可以建立与远程服务器的连接,检查远程资源的一些属性

URI和URLConnection类可以实现URL连接,这两个类隐藏了与服务器交互时复杂的连接以及数据交互,如果想实现与服务器的交互,首先必须将URL地址作为类URL构造方法的参数构建一个实例。如:

URL url=new URL(urlStr);

然后通过openConnection( )方法获取一个URLConnection对象,并通过URLConnection类的connect方法实现与服务器的连接。

openConnection( )方法的定义如下:

public URLConnection openConnection() throws IOException:返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接。

如:

URLConnection urlCon=url.openConnection() ;//得获取一个URLConnection对象

urlCon.connect();// 连接指定的URL,这时就可以从远程服务器获得想要的数据

URI和URLConnection类的区别相关推荐

  1. URI是什么意思?URI和URL有什么区别?

    URI是什么意思?URI和URL有什么区别? 详解! HTTP = Hyper Text Transfer Protocol URI = Universal Resource Identifier U ...

  2. “抽象类”的定义及其与“普通类”的区别

    我们都知道在多态中子类要重写父类的方法,执行时也执行子类中的方法,这就显得父类中的方法体有点子虚乌有了, 也就是说可以直接省略方法体,而只定义一个方法就可以了.因此,我们称一个没有方法体的方法为抽象方 ...

  3. android r类 作用,Android 主项目和 Module 中 R 类的区别

    Android 主项目和 Module 中 R 类的区别 我们知道 Android 项目中会通过自动生成一个 R.java 类的方式来保存项目中所有资源文件的标识在主项目中生成的 R.java 中的资 ...

  4. Debug类和Trace类的区别

    Debug类和Trace类的区别 您一定发现了在System.Diagnostics命名空间中还有一个名为Trace的类.它的函数功能和Debug非常相似.为什么要有这样两个功能类似的类呢? 原因是这 ...

  5. java中的stack类和C++中的stack类的区别

    文章目录 1 java中的stack类和C++中的stack类的区别 1.1 java中的stack类 1.2 C++中的stack类 1.3 分析 不经意间想到了这个问题,存到栈中的是对象的引用,还 ...

  6. 接口(interface)和抽象(abstract)类的区别

    2019独角兽企业重金招聘Python工程师标准>>> 接口与抽象类的区别: 1 两者表达的概念不一样.抽象类是一类事物的高度聚合,与子类的关系属于"是"的关系: ...

  7. bootstrap中container类和container-fluid类的区别

    近几天才开始系统的学习bootstrap,但马上就遇到了一个'拦路虎':container和container-fluid到底什么区别.  查了很多资料,看到很多人和我有同样的疑问,但是下面的回答一般 ...

  8. QVector、QList、QLinkedList类用法区别

    QVector.QList.QLinkedList类用法区别 1. QVector 是提供动态数组的一个模板类. QList 是提供列表的一个模板类. QLinkedList 是提供链表的一个模板类. ...

  9. URLConnection类

    URLConnection类是一个抽象类,代表程序与URL之间的通行连接,此类的实例可用来写入和读取URL引用的资源.URLConnection允许用于post,get或者其他的http请求方式,将请 ...

最新文章

  1. 配置中心Apollo的设计原理
  2. 每日一皮:程序员最讨厌的四件事!
  3. 那么到底什么是热点???
  4. 思科路由器NAT配置详解(转)
  5. java nature_Java中BufferedReader和scanner的对比 - nature
  6. linux 一行代码,一行代码终结你的Linux~
  7. python append函数_让你python代码更快的3个小技巧!速度提高了一倍还多
  8. frm ibd文件导入mysql_Mariadb,Mysql如何根据.frm和.ibd文件来恢复数据和表结构
  9. HTML+CSS实现品优购登录界面
  10. JS_eventBind
  11. L1-041 寻找250 (10 分)—团体程序设计天梯赛
  12. 【LeetCode】【refine 3】题号:*3. 无重复字符的最长子串
  13. 博客排名400-300的数据变化
  14. NPM安装依赖包,报错node-gyp rebuild...解决方法
  15. 电力系统潮流程序C语言,电力系统潮流C语音程
  16. 可以查看计算机主要自启动项的技术,电脑中怎么查看启动项
  17. 苹果原装转接头不能连html,变革之际 iPhone 7P原装lightning耳机及转接头拆解
  18. Mac下设置idea的代码提示快捷键
  19. Magic Number魔数是什么
  20. 不同BMP位图与调色板分析

热门文章

  1. 手把手教你做关键词匹配项目(搜索引擎)---- 第六天
  2. 物理磁盘空间使用已满导致数据库hang起
  3. CUDA 4.0真技术解析
  4. [项目过程中所遇到的各种问题记录]图表篇——asp.net上不错的图表选择—FunsionCharts...
  5. python变量与常量内容:
  6. 使用ImitateLogin模拟登录百度
  7. 【6.1】python中的变量是什么
  8. Microsoft.XMLHTTP 使用方式
  9. pandas-数据分析
  10. Adroid真机调试