资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
第9页 / 共16页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
二、判断题。在题后括号内,填上正确答案代号。(本大题共 14 小题,每小题 1 分,共 14 分)( F )1、Java 应用程序必须有一个类是 public 类。分析: 不必要, 可以全部是是 private 类, 比如后面会学到的”单例模式”( F)2、下列两个语句的作用等价:int a=1,2,3,4,5,6,7,8;int a=new int8;分析: 不等价, 前面是赋值了, 后面只是申请了空间( F )3、Java 编译器将源文件编译生成的字节码是机器码。分析: 为了保持它跨平台的特性 ,java 源文件先编译成一种中间码,在运行的时候再实时编译成目标平台的机器码( F )4、无论 Java 源程序包含几个类的定义,若该源程序文件以 Itee.java 命名,编译后生成的都只有一个名为 Itee 的字节码文件。分析: Java 的源代码中定义几个类,编译结果就生成几个以 class 为后缀的字节码文件。( F )5、子类可以继承父类所有的成员变量及成员函数。分析: 私有变量和方法不能被继承( T )6、Java 类中可以存在同名的两个成员方法。分析: 方法重载, 只要满足参数个数不同或参数类型不同便可( T )7、do-while 的循环体至少被执行一次。分析: 先执行循环体, 再执行判断条件 , 所以循环体至少被执行一次( T)8、若两个对象有相同的引用,则这两个对象就具有完全相同的属性和功能。分析: 如果:this 为一个对象的引用。otherobject 为另一个对象的引用。如果 this=otherobject,则这两个对象相等。得分利用来比较对象,只有在左右都指向同一个对象时成立,利用.equal 来比较,则比较两个对象的内容是否一致,如:String 的比较。( T )9、Socket 类既用于客户端,又用于服务器端。分析: Socket 是套接字 , 用于描述 IP 地址和端口,是一个通信链的句柄。应用程序通常通过套接字向网络发出请求或者应答网络请求, Socket 是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个 Socket 实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。服务器端: public class TCPServer public static void main(String args) throws Exception ServerSocket ss = new ServerSocket(6664); / 参数 port - 端口号;或者为/ 0,表示使用任何空闲端口。while (true) / 可以建立多个端口与不同客户端相连Socket s = ss.accept(); / 接受连接并在服务器端再建一个端口来与用户端连接DataInputStream dis = new DataInputStream(s.getInputStream();System.out.println(dis.readUTF();dis.close();s.close();客户端: public class TCPClient public static void main(String args) throws UnknownHostException, IOException /参数前面为本机 IP,后面为应用程序的端口号/Client 端的端口系统随机选择/申请连接Socket s = new Socket(192.168.1.102,6664); /创建一个流套接字并将其连接到指定主机上的指定端口号.OutputStream os = s.getOutputStream(); /s.getOutputStream 为输出管道DataOutputStream dos = new DataOutputStream(os); /包一层数据流dos.writeUTF(Hello server !); /以与机器无关方式使用 UTF-8(比较省空间) 修改版编码将一个字符串写入基础输出流。dos.flush();dos.close();s.close(); /连接完成以后要自己关闭( T)10、当 instanceof 左边的对象是右边的类创建的对象时,该运算的结果为true。分析:自己查 API,( T)11、子类中的成员变量只要和父类中的变量同名,子类就隐藏继承的成员变量。分析:看书 111 页, 子类隐藏继承的成员变量 , 即子类对象以及子类自己声明定义的方法操作与父类同名的成员变量是指子类重新声明定义的这个成员变量, 需要注意的是, 子类对象可以调用从父类继承的方法操作隐藏的成员变量.class People public double x;public void setX(double x) this.x = x;public double getDoubleX() return x;class Student extends People int x;public int getX() / x=20.56 /非法,return x;public class 成员变量的隐藏 public static void main(String args) Student stu = new Student();stu.x = 98; / 父类的 x 被隐藏了System.out.println(对象 stu 的 x 的值是: + stu.getX();/ stu.x=98.98; /非法stu.setX(98.98); / 只设计一个 setX 端口在父类,就可以修改父类中被隐藏的变量了double m = stu.getDoubleX(); / 通过父类的端口访问System.out.println(对象 stu 隐藏的 x 的值是: + m);( F )12、子类重写继承的方法时,可以降低方法的访问权限。分析: 1 基类有一个方法,比如 / 我们不考虑 Object 作为所有类的基类啦。 呵呵呵!public void method1()method2(); / 此方法需要调用 method2();public void method2() / 如果这个方法是 abstract 的话,也许会看得更清楚,不过不常见.2 子类重写了 Overrideprivate void method2() / 当然,编译错误,我们只是用来说明这样做的问题3 子类的子类如果他调用 method1() 会出现什么后果呢?a) 他能访问 method1(), 因为那是他的基类,且是 publicb) 但很可惜,method1()里面 却不能访问 method2()了,因为在父类是 private 的了。这岂不是很可笑的情况。所以,子类不能比父类的更私有,但可以更公开。 呵呵。这样才能保证父类已经实现的代码能够使用。另:从 5.0 开始,子类方法 override 时,可以返回与父类不同的类型。但参数必须完全相同。( T )13 、Java 的包 java.net 包含所有实现网络功能的类。分析: 记住吧( F )14、方法的重载实现功能的多态性,但构造方法不可以重载。分析也可以重载, 只要满足参数的个数或种类不同便可.三、填空题。在题中“ ”处填上答案。(本大题共 18 空,总计 36 分)1、 Calendar 对象调用 set(2009,9,1)设置的年、月、日为 2009 年 10 月1 日 。分析: API 中的解释setpublic final void set(int year,int month,int date)设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。保留其他日历字段以前的值。如果不需要这样做,则先调用 clear()。参数:year - 用来设置 YEAR 日历字段的值。month - 用来设置 MONTH 日历字段的值。 Month 值是基于 0 的。例如,0 表示 January。date - 用来设置 DAY_OF_MONTH 日历字段的值。如果想自己设置输出格式的话: 可以使用 SimpleDateFormat, SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 - 文本) 、解析(文本 - 日期)和规范化。public class Time public static void main(String args) new Time();System.out.println(Time.GetNowTime();public static String GetNowTime() Calendar rightNow = Calendar.getInstance();SimpleDateFormat fmt = new SimpleDateFormat(yyyy 年 MM 月 dd 日 HH:mm:ss);String sysDatetime = fmt.format(rightNow.getTime();return sysDatetime;得分2、 public URL(String protocol,String host,String file)throws MalfomedURLException构造的 URL 对象的 协议 、地址和资源分别由参数protocol、host 和 file 指定。分析: 记住吧3、当把级别高的变量的值赋给级别低的变量时,须使用 显式类型转换 类型转换运算。分析: 自动类型转换(也叫隐式类型转换) 强制类型转换(也叫显式类型转换) 表达式的数据类型自动提升所有的 byte 型、short 型和 char 的值将被提升到 int 型。如果一个操作数是 long 型,计算结果就是 long 型;如果一个操作数是 float 型,计算结果就是 float 型;如果一个操作数是 double 型,计算结果就是 double 型。个人觉得是为了保持精度, 所以有自动类型转换.4、 Java 中创建多线程主要采用一下两种方法:使用 Thread 子类,重写 run() 方法 ;使用 Runnable 接口,并将其实例与 Thread 实例相关联。分析: 建议使用第二种, 因为 java 只能继承一个类, 却可以重写很多接口, 所以实现接口更好些. 5、类成员的访问属性有:默认、public 、 private和 protected。分析: 送分题6、若要在程序中引入有用的数据类型类包中的 Date 类,则需使用语句: import java.util.Date;分析: 按住 ctrl+shift+m 导入指定的包, 按住 ctrl+shift+o 导入所有包, 删除没有用过的包7、子类要想继承父类的所有参数的构造方法,须使用关键字 super,super 须是子类构造方法中的第一条语句。分析: 记住就好8. Java 使用 try-catch 语句来处理异常,将可能出现的 异常(操作) 放在 try 部分,将发生异常后的处理放在 catch 部分,并可有多个 catch 部分组成。分析: 送分题9、 FileInpueStream 流的 read() 方法从输入流中顺序读取单个字节的数据。 11分析: 原来答案是 run(), 我查了 API, 并没有这个
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号