Java网络编程(一些基本方法使用、端口、传输协议UDP和TCP、socket套接字、获得百度的主机名)

方法的描述
1 、public static InetAddress getLocalHost()      获得主机名和IP地址
2、public String getHostAddress()      获取IP地址
3 、public String getHostName()      获取主机名
4、public static InetAddress   getByName(String host)      根据主机名获得IP地址
注意事项:有可能返回的主机ip有很多,只是显示了中的一个
端口(port)是虚拟的概念,并不是说在主机上真的有若干个端口。通过端口,可以在一个主机上运行多个网络应用程序。
        端口号是传输层协议的内容。
        端口号是一个2字节16位的整数;
        端口号用来标识一个进程,告诉操作系统,当前这个数据交给哪一个程序进行解析;
        IP地址 + 端口号能标识网络上的某一台主机的某一个进程;
        一个端口号只能被一个进程占用。
传输协议
        UDP
User Datagram Protocol ):是OSI参考模型中的传输层协议,是一个简单的面向消息的传输层协议,尽管UDP提供标头和有效负载的完整性验证(通过校验和),但它不保证向上层协议提供消息传递,并且UDP层在发送后不会保留UDP 消息的状态。因此,UDP有时被称为不可靠的数据报协议。如果需要传输可靠性,则必须在用户应用程序中实现。
UDP使用具有最小协议机制的简单无连接通信模型。UDP提供数据完整性的校验和,以及用于在数据报的源和目标寻址不同函数的端口号。
相当于収短信(有字数限制),不需要建立连接,数据报的大小限制在64k内,效率较高,不安全,容易丢包
        TCP
Transmission Control Protocol ):把连接作为最基本的对象,每一条TCP连接都有两个端点,这种断点我们叫作套接字(socket),它的定义为端口号拼接到IP地址即构成了套接字,例如,若IP地址为192.3.4.16 而端口号为80,那么得到的套接字为192.3.4.16:80。
相当于打电话,需要建立连接,效率相对比较低,数据传输安全,三次握手完成。 (点名—>答到—>确认)
Socket套接字
Socket (套接字)可以看成是两个网络应用程序进行通信时,各自通信连接中的端点,这是一个逻辑上的概念。
这个连接的一端称为一个socket。
Java中使用Socket完成TCP程序的开収,使用此类可以方便的建立可靠的、双向的、持续性的、点对点的通讯连接
在Socket的程序开収中,服务器端使用ServerSocket等待客户端的连接
对于java的网络程序来讲,每一个客户端都使用一个Socket对象表示

 
获得百度的主机名和一些基本方法使用
import java.net.InetAddress;
import java.net.UnknownHostException;


public class InetAddressDemo {

    public static void main(String[] args) throws UnknownHostException {
        InetAddress inetAddress = InetAddress.getLocalHost();
        System.out.println(inetAddress);

        InetAddress address = InetAddress.getByName("www.baidu.com");
        System.out.println(address);
        System.out.println(address.getHostName());
        System.out.println(address.getHostAddress());

    }
}

运行图

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值