教材学习内容总结

第13章-

  • URL类
  • InetAddress类
  • 套接字
  • UDP数据报
  • 广播数据报
  • Java远程调用(RMI)

教材学习中的问题和解决过程

1. URL类

  • URL类构造方法:

    • 使用字符串初始化一个URL对象:public URL(String spec) throws MaldormedURLException
    • 使用参数protocol,host和file指定协议、地址和资源:public URL (String protocol,String host,String file)throws MaldormedURLException
  • 读取URL中的资源: 调用InputStream openStresm()方法返回一个输入流

2. InetAddress类

  • 地址的表示:域名、Ip地址

    • java.net包中的InetAddress类对象含有一个主机地址的域名或IP地址
  • 获取地址
    • InetAddress上主机的地址:getByName(String s)获取一个域名或IP地址;getHostName()获取InetAddress对象所含的域名;getHostAddress()获取InetAddress对象所含Ip地址
    • 本地机的地址:getLocalHost()获取一个InetAddress对象,该对象含本地机的域名和IP地址。

3. 套接字

  • 概述

    • 端口规定为一个16位的0~65535
    • 01023被预先占用,除非需要访问特殊服务,否则应使用102465535中的一个端口,防止发生端口冲突
  • 客户端套接字

    • 构造方法:Socket (String host,iint port),参数host是服务器的IP地址,port是一个端口号。建立套接字对象的方法可能出现IOException异常,所以要采用try-catch的方法
    try{
    Socket clientSocket = new Socket("http://192.168.0.78",2010);
    }
    catch(IOException e){}
  • ServerSocket对象与服务器端套接字

    • 构造方法:(int port),port是一个端口。port必须和客户呼叫的端口号相同。也要使用try-catch方法。建立连接后,服务器套接字对象调用getInetAddress()方法可以获取一个InetAddress对象,该对象含有客户端的IP地址和域名。双方通信完毕后,套接字应使用close()方法关闭套接字连接
  • 使用多线程技术

    • 用Socket类的不带参数的构造方法Socket()创建一个套接字对象,该对象调用public void connect(Socket Address endpoint) throws IOException请求和参数SocketAddress指定的服务器对接
  • 套接字通信基本原则:

    • 服务器应当启动一个专门的线程,在该线程中和客户的套接字进行对接
    • 由于套接字的输入流在读取消息时可能发生阻塞,客户端和服务器端都需要在一个单独线程读取信息

4. UDP数据报

- 基于UDO通信的基本模式:
- 打包数据,将数据包发往目的地
- 接收数据包,查看内容
- 发送数据包
- 打包:用DatagramPacket类创建对象,称数据包
- 接收数据包
- 接收:用DatagramSocket(int port)构造方法创建对象,参数必须与待接收的数据包的端号口一致,然后对象mail_in用方法receive(DatagramPacket pack)接收数据包

5. java远程调用

代码托管

详见码云:码云作业

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 3000行 30篇 400小时
第九周 1324/200 2/11 20/20 深入

参考资料

  1. 教学视频
  2. Intellj IDEA 简易教程

20165223《Java程序设计》第九周Java学习总结的更多相关文章

  1. 201521123027 <java程序设计>第九周学习总结

    1.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2.书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什 ...

  2. 20165223 《JAVA程序设计》第四周学习总结

    20165223 <JAVA程序设计>第四周学习总结 教材学习内容总结 第五章要点 子类与继承 成员变量的隐藏和方法重写 super关键字 继承与多态 abstract类与abstract ...

  3. 20145322第九周JAVA程序设计基础学习总结

    20145322第九周JAVA程序设计基础学习总结 JDBC简介 JDBC全名Java DataBase Connectivity,是java联机数据库的标准规范.它定义一组标准类与接口,应用程序需要 ...

  4. 20145220java程序设计第九周学习总结

    20145220java程序设计第九周学习总结 教材学习内容总结 JBDC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商对接口直接操作,开发人员无须接触底层数据可驱动程序的差异 ...

  5. 20155317 2016-2017-2 《Java程序设计》第十学习总结

    20155317 2016-2017-2 <Java程序设计>第十学习总结 教材学习内容总结 1.网络编程的概念: 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作 ...

  6. 20145213《Java程序设计》第四周学习总结

    20145213<Java程序设计>第四周学习总结 教材学习内容总结 本周任务是学习面向对象的继承.接口以及之后的如何活用多态.(还真是路漫漫其修远兮啊!)教材也是延续上周艰深晦涩的语言风 ...

  7. 20145330《Java程序设计》第四周学习总结

    20145330<Java程序设计>第四周学习总结 一周两章新知识的自学与理解真的是很考验和锻炼我们,也对前面几章我们的学习进行了检测,遇到忘记和不懂的知识就再复习前面的,如此巩固也让我对 ...

  8. 20145337《Java程序设计》第四周学习总结

    20145337<Java程序设计>第四周学习总结 教材学习内容总结 继承与多态 继承 继承,避免多个类间重复定义共同行为 符合DRY(Don't Repeat Yourself)原则,多 ...

  9. 20145218 《Java程序设计》第四周学习总结

    20145218 <Java程序设计>第四周学习总结 教材学习内容总结 继承 继承共同行为 继承基本上就是避免多个类间重复定义共同行为. 继承的三个好处:减少代码冗余:维护变得简单:扩展变 ...

  10. 《Java程序设计》第四周学习总结

    20145224-陈颢文 <Java程序设计>第四周学习总结 教材学习内容总结 第六章 继承与多态 ·继承就是面向对象中,子类继承父类,避免重复的行为定义.重复再程序设计上是非常不好的信号 ...

随机推荐

  1. jmeter 启动jmeter-server.bat远程调用报错: java.io.FileNotFoundException: rmi_keystore.jks (系统找不到指定的文件。)

    1.找到apache-jmeter-5.0\bin\jmeter.properties 2.修改server.rmi.ssl.disable=true (记得去除server.rmi.ssl.disa ...

  2. lumen 5.6 设置APP_KEY为32位长的随机字符串

    在 App\Console\Commands下 添加以下内容的KeyGenerateCommand.php文件 <?php namespace App\Console\Commands; use ...

  3. Laravel5 创建自定义门面(Facade)

    门面为应用服务容器中的绑定类提供了一个“静态”接口.Laravel 内置了很多门面,你可能在不知道的情况下正在使用它们.Laravel 的门面作为服务容器中底层类的“静态代理”,相比于传统静态方法,在 ...

  4. tomcat server.xml各个端口的作用

    <Server port="8005" shutdown="SHUTDOWN"> <!-- port:指定一个端口,这个端口负责监听关闭Tom ...

  5. K8S集群 NOT READY的解决办法 1.13 错误信息:cni config uninitialized

    今天给同事 一个k8s 集群 出现not ready了 花了 40min 才搞定 这里记录一下 避免下载 再遇到了 不清楚. 错误现象:untime network not ready: Networ ...

  6. vue-cli: preset预设

    preset:预设 vue create demo01 过程中,会保存预设,自动保存着 .vuerc 文件中 .vuerc 文件的位置:C:\Users\Administrator C:\Users\ ...

  7. 解析xml文件 selectSingleNode取不到节点

    今天在做批量生成XML的时候,碰到一个情况 解析xml文件 selectSingleNode一直返回NULL. XML的格式开头有一句这个<CE401Message xmlns="ht ...

  8. How to SHA1 on macOS

    openssl sha1 /volumes/test/install/osx-test.dmg

  9. react用class关键字来创建组件

    创建组件之前,首先学习一个ES6的写法,叫做展开运算符. 比如我这里有两个数组.如何将第二个数组o2中的所有属性导入到数组o1中呢?一个个输太麻烦,所以就用到了展开运算符. var o2={ age: ...

  10. HackerRank beautiful string

    问题 https://vjudge.net/problem/HackerRank-beautiful-string 给一个字符串S,可以任意取走S中的两个字符从而得到另外一个字符串P,求有多少种不同的 ...