这个连接规定使用http协议。主机名称为www.mycompany.com。端口号为8080。这个URL的其它部分, /mywebapps/AwebApp,则确定了我们要在这个站点上所要访问的资源。在这个例子中的资源恰好是一个网络应用程序。而且,URL还可以包含其它的元素,比如说文件段以及查询信息等等。
从URL得到的数据可以是多种多样的,这些都需要一种统一的机制来完成对URL的读取与修改操作。Java语言在它的java.net软件包里就提供了这么一种机制。有关这个java.net软件包的问题我们会在URL class的部分中进行讨论。
URL class是从URL标示符中提取出来的。它允许Java程序设计人员打开某个特定URL连接,并对里边的数据进行读写操作以及对首部信息进行读写操作。而且,它还允许程序员完成其它的一些有关URL的操作。我们将会讨论由java.io包裹所提供的URL class以及stream classes是如何允许你对一个URL进行操作的,而且我们将会以对文件以及socket连接的操作差不多的风格对其进行讨论。
在创建java.net URL的实例的时候,你能够利用许多公共构造器,从而让其变得更具灵活性。举个例子来说,这个class提供了一种使用完整URL信息串的构造器,一种使用把URL信息串分解成为协议、主机名以及文件和资源的构造器,还有一种把URL信息串分解成为协议、主机名、端口号以及文件的构造器。我们首先使用完整的URL来创建一个URL class的例子:URL aURL = new URL(“http://www.mycompany.com:8080/index.html”);
在这个例子中,我们创建了一个使用完整URL的URL class,其中明确指出了使用的协议是http,主机名称是www.mycompany.com,端口号码为8080,文件/资源为index.html。如果组成URL的语法发生了错误,那么构造器就会发出MalformedURLException。