【王道Java】网络编程实战学习一

文章目录

  • 一,网络编程
    • 1.2,目的:
  • 二,Java万物皆对象
    • 2.1,InetAddress类
    • 2.2,端口
    • 2.3 InetSocketAddress类
  • 三,最后

一,网络编程

网络编程在很大程度上是发送和接收信息的功能,中间传输是物理线路。
【王道Java】网络编程实战学习一_第1张图片

1.2,目的:

计算机网络:
计算机网络是指在网络操作系统、网络管理软件和网络通信协议的管理和协调下,通过通信线路将不同地理位置上具有独立功能的多台计算机及其外部设备连接起来,实现资源共享和信息传输的计算机系统。
网络编程目的:
数据交流,数据交互。就是通信。

过程:
1,确定一台主机。192.168.16.124:端口,定位到
这个主机上的某个位置资源。
网页编程和网络编程:
JavaWeb是网页编程 B/S
网络编程:C/S
【王道Java】网络编程实战学习一_第2张图片
我这里主要针对于传输层,TCP,UDP。

俩个问题:
1,准确定位到网络上的一台或者多台终端
2,通信
要素:
1,ip和端口号
2,网络通信协议
这篇文章先记录一下ip和端口的理解与运用。

二,Java万物皆对象

ip地址:inetaddress

2.1,InetAddress类

这个类,没有构造方法,不能直接new对象。只能通过静态方法获得InetAddress的对象。

例子:
目的就是:查询网站ip地址,这里用ctf网站为例。

public class inet {
    public static void main(String[] args) throws UnknownHostException, UnknownHostException {
        InetAddress InetAddress1=InetAddress.getByName("imustctf.top");
        System.out.println(InetAddress1.getAddress());
        System.out.println(InetAddress1.getCanonicalHostName()); 
        System.out.println(InetAddress1.getHostAddress()); 
        System.out.println(InetAddress1.getHostName());
    }
}

上述代码解释:
getCanonicalHostName方法获取规范名。
getHostAddress方法获取ip
getHostName方法获取域名
输出样式:
【王道Java】网络编程实战学习一_第3张图片

2.2,端口

端口就是计算机上一个程序的进程。
不同的进程使用不同的端口号是为了区分软件。端口号不能冲突。
【王道Java】网络编程实战学习一_第4张图片
我们用命令看一下电脑的一些目前使用的端口。
命令是:
查看所有端口命令:

netstat -ano

如下图:
【王道Java】网络编程实战学习一_第5张图片
查看指定的端口和查看端口的进程

netstat -ano|finder ""
tasklist|findstr ""

2.3 InetSocketAddress类

1,netSocketAddress类是用来封装端口的。
2,可以理解为在InetAddress基础上加端口。
3,有构造器的。
这个可以new,没问题哈。

依然用imustctf来举例子。

public static void main(String[] args) {
        InetSocketAddress SocketAddress= new InetSocketAddress("imustctf.top",8080);
        System.out.println(SocketAddress);
        System.out.println(SocketAddress.getPort());
        InetAddress SocketAddress1=SocketAddress.getAddress();
        System.out.println(SocketAddress1.getHostAddress());
        System.out.println(SocketAddress.getHostName());
    }

上述代码块解释:
getPort方法:获得端口号。
用InetAddress类获取到端口ip。
getHostAddress方法:上面说过他的作用
getHostName方法:输出端口名

输出如下:

imustctf.top/39.103.239.16:8080
8080
39.103.239.16
imustctf.top

三,最后

这篇文章先写一下网络编程的基础学习,ip和端口的知识与运用。后续继续深入研究学习。
【王道Java】网络编程实战学习一_第6张图片

你可能感兴趣的:(#,王道Java从入门到精通,网络,java,学习)