网络
===================================================
java.net.InetAddress
java.net.ServerSocket
java.net.socket
java.net.InetAddress
================================================
*表示网络主机的IP地址
创建实例
---------------------------------------------
InetAddress ia=InetAddress.getLocalHost()
得到本机ip地址
InetAddress ia=InetAddress.getBytName(ip地址或主机名)
得到远程主机的ip地址
方法
-------------------------------
getHostAddress()
得到主机的ip地址
getHostName()
得到主机名(可能得不到主机名时返回ip地址....)
Socket
================================================
*网络套接字
*IP+端口(1-65535)的抽象定义
ServerSocket
===================================================
*选取一个本机端口,在这个端口上等待客户端来连接.
*当客户端向这个端口发起连接,在服务器端会创建新的Socket连接通道,
并在服务器随机选取一个端口来建立连接通道
创建实例.
-----------------------------------------------------------------------
ServerSocket ss=new ServerSocket(端口号);
端口选择:
1024~50000 1024之前的端被系统占用 ftp-21(默认) http:80 https-433 等等....
方法:
-------------------------------------------------------
accept()
System.out.pringln(112)//这句话会accept()收到后执行
在指定的端口上等待客户端发起连接
阻塞的方法,一般在工作线程中调用.
close()
停止服务,释放占用的端口.
Socket
===============================================
socket 表示一个抽象的网络连接
创建
---------------------------
服务器端
Socket s=ss.accept();
客户端:
Socket s=new Socket(ip,端口);//服务器端ip和端口号
方法
------------------------
getInputStream
getOutputStream
setSoTimeout()
设置接收数据的等待超时时长
超时候会出现SocketTimeOutException 针对于in.read方法(server端踢人用)
=====================回环IP================
localhost=127.0.0.1
模拟器访问宿主计算机固定ip:10.0.2.2
tag:yourTag 过滤