文章目录
-
- 选择题
- 单选题
- 编程题
-
-
- 7-1 整型数除法异常处理 (10 分)
- 7-2 使用HashMap实现查找功能 (10 分)
- 7-3 统计字母和空格出现的次数 (10 分)
- 7-4 自定义异常CircleException (10 分)
- 7-5 求非负数的平方根 (10 分)
- 7-6 super访问父类的成员变量 (10 分)
- 7-7 使用HashSet去除重复字符串 (10 分)
- 7-8 使用HashSet实现学生信息管理 (10 分)
- 7-9 使用抽象方法评定教职工职位 (10 分)
- 7-10 异常的捕捉、处理、自定义。 (10 分)
- 7-11 倒计时 (10 分)
- 7-12 使用成员内部类实现接口 (10 分)
- 7-13 打印字母表 (10 分)
- 7-14 使用局部内部类实现接口 (10 分)
- 7-15 使用匿名内部类实现接口 (10 分)
- 7-16 使用匿名内部类实现接口抽象方法,完成对字符串数字的处理 (10 分)
- 7-17 通过Runnable接口实现线程应用 (10 分)
- 7-18 通过调用sleep(),call()方法,允许执行转换到另一个线程 (10 分)
- 7-19 第五个人的年龄 (10 分)
- 7-20 倒序输出 (10 分)
- 7-21 n以内的"水仙花数 " (10 分)
- 7-22 最大公约和最小公倍 (10 分)
- 7-23 字符统计 (10 分)
- 7-24 数列的前n项 (10 分)
- 7-25 回文数 (10 分)
- 7-26 矩阵对角线元素之和 (10 分)
- 7-27 整数截取 (10 分)
- 7-28 杨辉三角 (10 分)
- 7-29 元素交换 (10 分)
- 7-30 约瑟夫环 (10 分)
- 7-31 TreeMap存放学生信息 (10 分)
- 7-32 自定义异常 (10 分)
- 7-33 课程选择教材的实现 (10 分)
- 7-34 抽象类的使用 (10 分)
- 7-35 学生的成绩等级计算。假设某班级里既有本科生也有研究生 , 请编写程序统计出全班学生的成绩等级并显示出来。 (10 分)
- 7-36 学校人事管理 (10 分)
- 7-37 设计一个简单的学生选课系统,管理学生选课信息。 (10 分)
- 7-38 使用列表(ArrayList)存储多个整数,输出其中的最大值及其索引号。 (10 分)
- 7-39 使用抽象类计算图形相关信息 (10 分)
- 7-40 一个计数器 (10 分)
- 7-41 使用抽象方法评定学生成绩等级 (10 分)
- 7-42 线程的wait方法 (10 分)
- 7-43 多个线程之间的同步,线程a执行完了才可以执行线程b,b执行完了再可以执行c。 (10 分)
- 7-44 分段累加 (10 分)
- 7-45 线程交替循环打印输出 (10 分)
- 7-46 模拟顾客汇款操作 (10 分)
- 7-48 使用TreeMap实现计算字符串中出现的字符索引(字符在串中的位置) (10 分)
- 7-49 得到字符串的最小价值 (10 分)
- 7-50 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律 (10 分)
-
- 参考答案
选择题
1-1
匿名内部类不能有构造方法,不能定义任何静态成员、方法和类,只能创建匿名内部类的一个实例。
- T
- F
1-2
匿名内部类不能有构造方法,不能定义任何静态成员、方法和类,只能创建匿名内部类的一个实例。
- T
- F
1-3
子类拥有的成员数量一定大于等于父类拥有的成员数量。
- T
- F
1-4
类的方法可以重载定义,但是构造方法都不可以重载定义。
- T
- F
1-5
Java中不可以自定义异常。
- T
- F
1-6
Java使用throw和throws来捕获异常。
- T
- F
1-7
URLConnection是一个抽象类,表示网络上某个资源的地址。
- T
- F
1-8
Socket不能成为网络上运行的程序之间双向通信链路的最后终结点。
- T
- F
1-9
DatagramPacket类用于处理报文,它将Bit数组、目标地址、 目标端口号等数据包装成报文或者将报文拆卸成Bit数组。
- T
- F
1-10
TCP/IP协议为每种服务定义了端口,当一台计算机上运行不同服务器程序时,可以为一个端口号提供多个不同服务。
- T
- F
1-11
final修饰符可应用于类、方法和变量。
- T
- F
1-12
反序列化是将数据分解成字节流,以便存储在文件中或在网络上传输。
- T
- F
1-13
接口是一种只含抽象方法或常量的特殊抽象类。
- T
- F
1-14
线程调用sleep()结束后,立即恢复执行。
- T
- F
1-15
智能手机(如iphone、android)可以通过socket或http方式与服务器程序进行交互,是事实上的C/S模式。
- T
- F
单选题
2-1
一个客户进程执行以下代码: Socket socket1 = new Socket(host, port); Socket socket2 = new Socket(host, port); 以下哪些说法正确?
(2分)
- A.socket1与socket2占用不同的本地端口
- B.Socket构造方法中的port参数指定客户端占用的本地端口
- C.不能在客户端创建两个Socket对象
- D.执行第二个程序代码会抛出异常,因为一个客户进程只能与服务器建立一个TCP连接
2-2
运行以下代码的输出结果是?
String s = new String("Bicycle");
int iBegin = 1; char iEnd = 3;
System.out.println(s.substring(iBegin, iEnd));
- A.Bic
- B.ic
- C.icy
- D.没有和 substring(int,char)匹配的方法
2-3
以命令java Test 1 2 3运行以下代码时,将发生什么?
public class Test{
static public void main(String[] args) {
int counter = 0;
do
{
System.out.println(args[++counter]);
}
while (counter < args.length);
}
}
- A.编译错误
- B.编译和运行均成功
- C.代码总是漏掉最后一个传递给程序的参数
- D.编译通过,但是在运行时抛出一个运行期异常
2-4
JAVA中内存分配与回收,说法不正确的是。
(2分)
- A.程序员不需要创建一个线程来释放内存
- B.类变量定义时不分配内存空间,new用来为类变量分配存储空间
- C.内存回收程序负责释放无用内存
- D.开发人员可利用清除对象的方法,当一个对象不使用时,将该对象赋为null
2-5
以下关于异常的说法正确的是。
- A.一旦出现异常,程序就终止了
- B.如果一个方法声明将抛出某个异常,它就必须真的抛出那个异常
- C.在catch子句中匹配异常是一种精确匹配
- D.可能抛出系统异常的方法是不需要声明异常的
2-6
下列说法正确的是
- A.每一个JAVA线程可以看成由代码、一个真实的CPU及数据三部分组成
- B.创建线程的两种方法中,从Thread类中继承的创建方式可防止出现多父类问题
- C.Thread类属于JAVA.util程序包
- D.以上说法都错
2-7
关于线程,下面哪个说法是正确的?
- A.“Runnable” 在JAVA中是关键字,用于标识那些可以作为独立线程的类
- B.“Runnable” 是一个接口, 以独立线程方式运行的类可以实现它
- C.“Runnable” 是一个类, 以独立线程方式运行的类可以继承它
- D.以上说法都不对
2-8
以下关于内部类的说法不正确的是?
- A.内部类中不能定义static的变量
- B.除非内部类本身是static 的,否则内部类中不能定义static的变量
- C.内部类可以作为外部类的子类
- D.内部类可以是 private的,外部类和顶层类却不能
2-9
对于构造方法,下列叙述中不正确的是。
- A.构造方法是类的一种特殊方法,它的方法名必须与类名相同
- B.构造方法的返回类型只能是void型
- C.构造方法的主要作用是完成对类的对象的初始化工作
- D.一般在创建新对象时,系统会自动调用构造方法
2-10
下面哪个关键词和方法不是线程同步所需要的
- A.synchronized
- B.wait()
- C.sleep()
- D.notify()
2-11
线程生命周期中正确的状态是。
- A.新建状态、运行状态和终止状态
- B.新建状态、运行状态、阻塞状态和终止状态
- C.新建状态、可运行状态、运行状态、阻塞状态和终止状态
- D.新建状态、可运行状态、运行状态、恢复状态和终止状态
2-12
Java语言中,在类定义时用final关键字修饰,是指这个类
- A.不能被继承
- B.在子类的方法中不能被调用
- C.能被别的程序自由调用
- D.不能被子类的方法覆盖
2-13
下列代码中,子类中能与父类public void methodA(int a){ }方法形成重写的是哪项?
- A.public int methodA(int a){return 1;}
- B.public void methodA(int a) throws Exception{ }
- C.private void methodA(int a){ }
- D.public void methodA(int b){ }
2-14
在一个Java文件中,使用import、class和package的正确顺序是下列哪项?
- A.package、import、class
- B.class、import、package
- C.import、package、class
- D.package、class、import
2-15
给出如下代码:
class Test{
private int m;
public static void fun() {
// some code...
}
}
如何使成员变量m 被函数fun()直接访问?
(2分)
- A.将private int m 改为protected int m
- B.将private int m 改为 public int m
- C.将private int m 改为 static int m
- D.将private int m 改为final int m
2-16
下面关于线程状态的说法正确的是。
- A.线程被启动后,将处于运行状态,即run()方法正在执行中
- B.线程结束阻塞状态将进入就绪状态
- C.当CPU空闲时,可以直接调用阻塞状态的线程来运行
- D.运行状态的线程就不再可能直接进入就绪状态
2-17
下列类中在多重catch中同时使用时( )异常类应该最后列出。
- A.ArithmeticException
- B.NumberFormatException
- C.Exception
- D.ArrayIndexOutOfBoundsException
2-18
如何判断一个Socket对象当前是否处于连接状态?
- A.boolean isConnected = socket.isConnected( )&&socket.isBound( )
- B.boolean isConnected = socket.isConnected( )&& !socket.isClosed( )
- C.boolean isConnected = socket.isConnected( )&& !socket.isBound( )
- D.boolean isConnected = socket.isConnected( )
2-19
编译并运行以下代码的结果是? Test1 是一个类.
Test1[] t1 = new Test1[10];
Test1[][] t2 = new Test1[5][];
if (t1[0] == null)
{
t2[0] = new Test1[10];
t2[1] = new Test1[10];
t2[2] = new Test1[