20165334 《java程序设计》第9周学习总结

学号 20165334 《Java程序设计》第9周学习总结

教材学习内容总结

13章知识总结

获取地址

1.获取Internet上主机的地址

  • 可以使用InetAddress类的静态方法getByName(String s);
  • 获得一个InetAddress对象,该对象含有主机地址的域名和IP地址,该对象用如下格式表示它包含的信息: www.sina.com.cn/202.108.37.40

1、获取本地机的地址

使用InetAddress类的静态方法getLocalHost()获得一个InetAddress对象,该对象含有本地机的域名和IP地址。

2、客户端套接字

1建立连接到服务器的套接字对象: 2 try{ Socket mysocket=new Socket(“http://192.168.0.78,1880); 3 } 4 catch(IOException e) 5 { } 6与mysocket相关的方法 7getInputStream()获得一个输入流 8getOutputStream()获得一个输出流 9用getInputStream()得到的输入流接到另一个DataInputStream数据流上 10用getOutputStream()得到的输出流接到另一个DataOutputStream数据流上

3、ServerSocket对象与服务器端套接字

1服务器必须建立一个ServerSocket对象,该对象通过将客户端的套接字对象和服务器端的一个套接字对象连接起来,从而达到连接的目的。 2建立ServerSocket对象: 3 try{ ServerSocket serverForClient =new ServerSocket(2010); 4 } 5 catch(IOException e){} 6使用方法accept()将客户的套接字和服务器端的套接字连接起来,代码如下所示: 7 try{ Socket sc= serverForClient .accept(); 8 } 9 catch(IOException e){} 10所谓“接收”客户的套接字连接就是accept()方法会返回一个和客户端Socket对象相连接的Socket对象。

4、发送数据包

1.用DatagramPacket类将数据打包,即用DatagramPacket类创建一个对象,称为数据包。用DatagramPacket的以下两个构造方法创建待发送的数据包:

  • DatagramPacket(byte data[],int length,InetAddtress address,int port)
  • DatagramPack(byte data[],int offset,int length,InetAddtress address,int port)

2.用DatagramSocket类的不带参数的构造方法:DatagramSocket()创建一个对象,该对象负责发送数据包。例如:

  • DatagramSocket mail_out=new DatagramSocket(); mail_out.send(data_pack);

接收数据包

  1. 首先用DatagramSocket的另一个构造方法DatagramSocket(int port) 创建一个对象,其中的参数必须和待接收的数据包的端口号相同。例如,如果发送方发送的数据包的端口是5666,那么如下创建DatagramSocket对象: DatagramSocket mail_in=new DatagramSocket(5666);
  2. 然后对象mail_in使用方法receive(DatagramPacket pack)接受数据包。 3.用 DatagramPack类的另外一个构造方法: DatagramPack(byte data[],int length)创建一个数据包,用于接收数据包,例如: byte data[]=new byte[100]; int length=90; DatagramPacket pack=new DatagramPacket(data,length); mail_in.receive(pack); 该数据包pack将接收长度是length字节的数据放入data。

代码托管

(statistics.sh脚本的运行结果截图)

学习进度条

代码行数(新增/累积)

博客量(新增/累积)

学习时间(新增/累积)

重要成长

目标

5000行

30篇

400小时

第一周

200/200

2/2

20/20

第二周

300/500

2/4

18/38

第三周

500/1000

3/7

22/60

第四周

300/1300

2/9

30/90

第五周

1000/1300

2/9

30/90

第六周

900/1300

2/9

30/90

第七周

600/1300

2/9

30/90

第八周

900/1300

2/9

30/90

第九周

13016/1300

2/9

30/90

参考资料

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Java日期时间API系列31

  时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总毫秒数,是所有时间的基础,其他时间可以通过时间戳转换得到。Java中本来已经有相关获取时间戳的方法,Java8后增加新的类Instant等专用于处理时间戳问题。 1获取时间戳的方法和性能对比1.1获取时间戳方法Java8以前

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

20165310java_blog_week6

2165310《Java程序设计》第6周学习总结教材学习内容总结String构造StringstrnewString()String(chara)String(chara,i

20165334 《java程序设计》第9周学习总结 - HelloWorld