网络编程基础/TCPIP/Socket/InetAddress/URL



现实运用中,Socket还是经常用的
通信必备条件

1、每台主机拥有唯一的标识(IP地址)
2、共同的通信语言(协议)
3、区别不同应用程序的端口



网线、网卡等属于物理层;TCP/IP协议在传输层;应用层也是用户可以直接接触得到的,如以下协议:


应用层协议

IP地址

IP地址也有格式,IPv4版本指的是第四个版本
端口:
一台电脑可以运行多个不同的程序,用端口号区分这些应用程序。一台电脑上的QQ消息能不能被另一台电脑的MSN接收呢?当然不能,原因就是两个程序的端口号不同


自定义端口号时,建议1023之后的

Socket
常用协议默认端口号
public static void main(String[] args) throws UnknownHostException {
        
        //获取本机的InetAddress实例
        InetAddress address1=InetAddress.getLocalHost();  //会产生异常,try/catch解决或者抛出异常
        System.out.println("本机InetAddress获得计算机名称:"+address1.getHostName());
        System.out.println("本机InetAddress获得计算机IP地址:"+address1.getHostAddress());
        //字符数组获得IP地址
        byte[] bytes1=address1.getAddress();         //可能会溢出
        System.out.println("字符数组形式获得IP:"+Arrays.toString(bytes1));
        //直接输出InetAddress对象
        System.out.println(address1);
        System.out.println("===================");
        
        //根据其他电脑的名称获取InetAddress对象
        InetAddress address2=InetAddress.getByName("Lenovo-PC");
        System.out.println("获得名称:"+address2.getHostName());
        System.out.println("获得IP地址:"+address2.getHostAddress());
        
        //根据其他电脑的IP获取InetAddress对象
        InetAddress address3=InetAddress.getByName("192.168.1.108");
        System.out.println("名称:"+address3.getHostName());
        System.out.println("IP地址:"+address3.getHostAddress());
        
    }
InetAddress运行截图


URL

URL

一个网址就是一个URL,如“www.baidu.com”就是一个URL

URL组成

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 86,947评论 14 122
  • 1. 网络编程概述 1.1 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接...
    JackChen1024阅读 411评论 0 3
  • 网络概念第一天 两台电脑怎么通过网络传输数据?怎样才能知道传输的是数据?谁摸过网线? 看电影,怎么看的?通过电流,...
    小吖朱阅读 504评论 0 0
  • 名词延伸 通俗的说,域名就相当于一个家庭的门牌号码,别人通过这个号码可以很容易的找到你。如果把IP地址比作一间房子...
    杨大虾阅读 14,546评论 2 54
  • 【朋友圈送书】做一个送书活动,打算送出20本《大师们的写作课》给中小学语文老师。大家不论是自己是老师,或者身边的亲...
    花香两岸阅读 39评论 0 0