面向对象的程序设计-Java张白一第三版第14章
- 格式:ppt
- 大小:1.73 MB
- 文档页数:101
第 14 章 网络编程请分析对比 TCP 协议与 UDP 协议的特点,以及它们通讯流程的区别。
参考 14.1.2 2. 解释在基于 TCP 的网络编程时 ServerSocket 和 Socket 的作用。
ServerSocket 实现了服务器套结字,它的实例需要注册到主机系统,并提供面向客户 端的请求侦听服务。
而 Socket 实现客户端套接字,基于 TCP 网络编程时的网络客户端可以 利用一个 Socket 实例和服务器端的 Socket 实例进行通信。
3. 解释在基于 UDP 的网络编程时 DatagramSocket 和 DatagramPacket 的作用。
DatagramSocket 表示用来发送和接收数据报包的套接字,数据报套接字是包投递服务 的发送或接收点。
DatagramPacket 数据报包用来实现无连接包投递服务。
4. 如果要捕捉端口重复使用的异常,应该使用哪个异常类? BindException 用来将套接字绑定到本地地址和端口时发生错误的情况下,抛出此异 常。
5. 对于对象的传输,在编程的时候要注意哪些问题?传输基础对象和非基础对象时,程 序编写有什么不同? 一个对象能否传输取决于该对象是否能够被串行化。
对于 JDK 提供的如 Integer、 String、Date 等类型的对象,由于已经被串行化,因此可以被直接传输,而使用用户自定 义的类,如果需要进行串行化传输,则该类要实现 Serializable 接口,并且保证该类的每 个要传输的属性其类型必须也是可串行化。
同时,由于 Socket 的通信是建立在双方的同步基础之上的,因此在进行非基础对象的传输 时,需要保证通信两端构造流的顺序必须按照相反的顺序构造。
6. 程序 14-6 给出了客户端的对象传输程序,请给出服务器端的改造程序,并调试运行。
1.package chap14.session4; public class Account { private String id; // 用户唯一的 id private String name;// 用户名称 private int balance;// 当前余额 public Account(String id, String name, int balance) { super(); this.id = id; = name;this.balance = balance; } public Account(String id, String name) { super(); this.id = id; = name; this.balance = 0; } // 这里省略了每个属性的 getter 和 setter 方法,请创建时自行添加。
《Java面向对象程序设计》(耿祥义张跃*著) 课后答案下载(细选2篇)《Java面向对象程序设计》(耿祥义张跃著) 课后答案下载11.James Gosling2.(1)使用一个文本编辑器编写源文件。
(2)使用Java编译器(javac.exe)编译Java源程序,得到字节码文件。
(3)使用Java解释器(java.exe)运行Java程序3.Java的源文件是由若干个书写形式互相的类组成的。
应用程序中可以没有public类,若有的话至多可以有一个public类。
4.系统环境path D\jdk\bin;系统环境classpath D\jdk\jre\lib\rt.jar;.;5. B6. Java源文件的扩展名是.java。
Java字节码的扩展名是.class。
7. D8.(1)Speak.java(2)生成两个字节码文件,这些字节码文件的名字Speak.class 和 Xiti8.class(3)java Xiti8(4)执行java Speak的错误提示Exception in thread "main" ng.NoSuchMethodError:main执行java xiti8得到的错误提示Exception in thread "main" ng.NoClassDefFoundError: xiti8 (wrong name: Xiti8)执行java Xiti8.class得到的错误提示Exception in thread "main" ng.NoClassDefFoundError: Xiti8/class执行java Xiti8得到的输出结果I'm glad to meet you9.属于操作题,解答略。
习题21. D2.【代码1】【代码2】错误 //【代码3】更正为 float z=6.89F;3.float型常量后面必须要有后缀“f”或“F”。
第六章面向对象的程序设计6.1 面向对象程序设计概述1. 基本概念面向对象的程序设计是经过对类、子类和对象等的设计来体现的类是面向对象程序设计技术的核心。
类: 定义了对象特征以及对象外观和行为的模板。
类的特征:封装性: 隐藏了类中对象的内部数据或操作细节, 只看到外表信继承性:任何类都能够从其它已有的类中派生, 新类保持了父类中的行为和属性, 但增加了新的功能。
体现了面向对象设计方法的共享机制。
多态性: 相同的操作可作用于多种类型的对象上, 并获得不同的抽象性: 提取一个类或对象与众不同的特征, 而不对该类或对象的所有信息进行处理。
基类:系统本身提供的类称为基类。
基类包括容器类和控件类。
容器类是其它对象的集合, 如表格、选项按钮组; 控件类是单一的对象, 不包含其它对象, 如命令按钮、文本框。
子类:以其它类定义为起点, 对某一对象所建立的新类。
新类将继承任何对父类所做的修改。
类库:存储类的文件, 每一个以可视方式设计的类都存储在一个类库中。
类库文件的扩展名为.VCX 。
对象: 是类的一个实例, 包括了数据和过程。
具有所在类所定义的全部属性和方法。
VFP有两种对象:容器对象和控件对象。
属性: 控件、字段或数据库对象的特性。
事件:由对象识别的一个动作。
方法:与对象相联系的由程序执行的一个处理过程, 即处理事件的一组代码用户不能够为对象创立新的事件, 但能够创立新的方法程序。
2. Visual FoxPro 基类从下述Visual FoxPro 基类中, 能够派生子类或创立对象。
容器命令组控件微调标签表单命令按钮复选框OLE 容器控制线条表单集选项组列表框OLE 绑定型控制分隔符#表格选项按钮#文本框自定义形状标头#页框组合框工具栏图象列#页面#编辑框计时器注: # 这些类是父容器的集成部分, 在类设计器中不能子类化基类事件的最小集合事件说明Init 当对象创立时激活。
Destroy 当对象从内存中释放时激活。