20165326 java第九周学习笔记

时间:2023-02-25 14:31:51

第九周学习笔记

URL类

  • 属于java.net
  • 最基本三部分:协议(对象所在的Java虚拟机支持)、地址(能连接的有效IP地址或域名)、资源(主机上的任何一个文件)
  • 常用构造方法
  • public URL (String spec) thows MalformedURLException,使用字符串初始化对象
  • public URL(String protocol, String host, int port, String file, URLStreamHandler handler) 可根据指定的protocol、host、port号、filehandler创建 URL 对象。
  • 对象调用InputSream openStream()方法可以返回一个输入流,指向对象所包含的资源

    InetAddress类

  • 域名服务器DNS负责将域名转化成IP地址,和主机建立连接
  • 获取主机地址:getByName(String s) 域名或IP地址传给参数s,获得InetAdderss对象
  • 获取本地机地址:getLocalHost() 获得InetAdderss对象,含本地机的域名和IP地址

    套接字

  • 网络通信使用IP地址标识Internet上的计算机,使用端口号(16位的0~65535之间的整数,0~1023被预先定义的服务占用)标识服务器上的进程
  • 两个程序通过使用Socket类建立套接字对象并连接在一起实现通信
  • 客户端套接字
  • Socket (String host,iint port),参数host是服务器的IP地址,port是一个端口号。
  • 建立套接字对象的方法可能出现IOException异常,所以要采用try-catch的方法
  • ServerSocket对象与服务器端套接字
  • 构造方法:(int port),port是一个端口。port必须和客户呼叫的端口号相同。也要使用try-catch方法。
  • 建立连接后,服务器套接字对象调用getInetAddress()方法可以获取一个InetAddress对象,该对象含有客户端的IP地址和域名。
  • 双方通信完毕后,套接字应使用close()方法关闭套接字连接。
  • 采用多线程技术
  • 可以用Socket类的不带参数的构造方法Socket()创建一个套接字对象,该兑现调用public void connect(Socket Address endpoint) throws IOException请求和参数SocketAddress指定的服务器对接。
  • 在套接字通信中,有两个基本原则:1、服务器应当启动一个专门的线程,在该线程中和客户的套接字进行对接。2、 由于套接字的输入流在读取消息时可能发生阻塞,客户端和服务器端都需要在一个单独线程读取信息。

代码托管

20165326 java第九周学习笔记
码云链接

参考资料

InteAddress类API