java网络编程(1)

  太久没有用java做一些东西了,搞太多的协议框架,基本的东西好像快忘记了~每天抽出一点时间出来,来好好温习下基础,顺便记录下来,以后还忘记可以回来看看==。首先从网络编程开始吧==。这玩意太久没有用了~(注:主要是根据老毕的教程来的)

  首先,要网络编程,得知道网络编程的三要素:IP、端口、协议;

  一般网络编程是在传输层和网络层这两层上面,最常见的协议就是TCP/IP、UDP,网络编程我们不考虑应用层,搞javaweb才是在应用层上面,底层的网络通讯基本封装起来了,这也就是为什么我回来学网络编程了~

  网络编程,肯定用到的包就是java.net这个包啦,查了下API熟悉一下:

  写了一个打印主机地址和主机名的小demo==。

 1 package com.seven.exercise1;
 2 
 3 import java.net.InetAddress;
 4 
 5 public class Demo1 {
 6 
 7     
 8     public static void main(String[] args) throws Exception{
 9         InetAddress i = InetAddress.getLocalHost();
10         System.out.println(i.getHostAddress());
11         System.out.println(i.getHostName());
12     }
13     
14     
15 }

   

  那这么获取别的主机的地址呢?我写了一个获取百度主机地址的小demo:

  其中,getAllByName()是用于获取多个主机地址的,如果知道主机地址的话,也可以用getByName来直接获取~

package com.seven.exercise1;

import java.net.InetAddress;

public class Demo2 {

    public static void main(String[] args) throws Exception{
        InetAddress[] addrs = InetAddress.getAllByName("www.baidu.com");
        for(InetAddress i : addrs){
            System.out.println(i.getHostAddress());
            System.out.println(i.getHostName());
        }
    }
}
原文地址:https://www.cnblogs.com/sevenlin/p/4649748.html