恒生历年笔试题 下载本文

A.在现实生活中,对象是指客观世界的实体 B.程序中的对象就是现实生活中的对象

C.在程序中,对象是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(class)

D.在程序中,对象是一组变量和相关方法的集合 解答:B

43.执行下列代码后,哪个结论是正确的 String[] s=new String[10]; A. s[9] 为 null; B. s[10] 为 \C. s[0] 为 未定义 D. s.length 为10 解答:AD

s是引用类型,s中的每一个成员都是引用类型,即String类型,String类型默认的值为null s数组的长度为10。

44.属性的可见性有。(选择3项) A.公有的 B.私有的

C.私有保护的 D.保护的 解答:ABD

属性的可见性有四种:公有的(public) 保护的(protected) 默认的 私有的(private)

45.在字符串前面加上_____符号,则字符串中的转义字符将不被处理。(选择1项) A @ B \\ C # D % 解答:B

46.对记录序列{314,298,508,123,486,145}按从小到大的顺序进行插入排序,经过两趟排序后的结果为:(选择1项) A {314,298,508,123,145,486} B {298,314,508,123,486,145} C {298,123,314,508,486,145} D {123、298,314,508,486,145}

解答:B

插入排序算法:

public static void injectionSort(int[] number) { // 第一个元素作为一部分,对后面的部分进行循环 for (int j = 1; j < number.length; j++) {

int tmp = number[j]; int i = j - 1;

while (tmp < number[i]) {

13

number[i + 1] = number[i]; i--;

if (i == -1) break; }

number[i + 1] = tmp; } }

47.栈是一种。(选择1项) A 存取受限的线性结构 B 存取不受限的线性结构 C 存取受限的非线性结构 D 存取不受限的非线性结构 解答:A

栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。 48.下列哪些语句关于内存回收的说明是正确的。(选择1项) A.程序员必须创建一个线程来释放内存 B.内存回收程序负责释放无用内存

C.内存回收程序允许程序员直接释放内存

D.内存回收程序可以在指定的时间释放内存对象

解答:B

垃圾收集器在一个Java程序中的执行是自动的,不能强制执行,即使程序员能明确地判断出有一块内存已经无用了,是应该回收的,程序员也不能强制垃圾收集器回收该内存块。程序员唯一能做的就是通过调用System. gc 方法来\建议\执行垃圾收集器,但其是否可以执行,什么时候执行却都是不可知的。

49.Which method must be defined by a class implementing the java.lang.Runnable interface? A. void run()

B. public void run() C. public void start() D. void run(int priority)

E. public void run(int priority) F. public void start(int priority) 解答:B

实现Runnable接口,接口中有一个抽象方法run,实现类中实现该方法。 50. Given:

public static void main(String[] args) {

Object obj = new Object() { public int hashCode() { return 42; } };

System.out.println(obj.hashCode());

14

}

What is the result? A. 42

B. An exception is thrown at runtime.

C. Compilation fails because of an error on line 12. D. Compilation fails because of an error on line 16. E. Compilation fails because of an error on line 17. 解答:A

匿名内部类覆盖hashCode方法。 51. Which two are reserved words in the Java programming language? (Choose two) A. run B. import C. default D. implements 解答:BD

import导入包的保留字,implements实现接口的保留字。

52. Which two statements are true regarding the return values of property written hashCodeand equals methods from two instances of the same class? (Choose two)

A. If the hashCode values are different, the objects might be equal. B. If the hashCode values are the same, the object must be equal. C. If the hashCode values are the same, the objects might be equal. D. If the hashCode values are different, the objects must be unequal. 解答:CD

先通过 hashcode来判断某个对象是否存放某个桶里,但这个桶里可能有很多对象,那么我们就需要再通过 equals 来在这个桶里找到我们要的对象。

填空题

1、奇偶校验法只能发现_____数个错,不能检查无错或_____数个错。

2、在UNIX/Linux下改变文件所有者的命令是_____,查看当前进程的命令是_____。

3、变量a定义为:一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数,具体语句是___________________。 4、以下程序输出结果是_____ #include

Sub1(char a,char b) {char c; c=a;a=b;b=c;} Sub2(char* a char b) {char c; c=*a;*a=b;b=c;} Sub3(char*a char*b) {char c; c=*a;*a=*b;*b=c;} 5、{char a,b;

A=’A’ ;b=’B’; sub3(&a,&b);putchar(a);putchar(b); A=’A’ ;b=’B’; sub2(&a,b);putchar(a);putchar(b); A=’A’ ;b=’B’; sub1(a,b);putchar(a);putchar(b);

15

6、SQL语言集数数据查询、_____、_____、_____功能于一体,充分体现了关系数据语言的特点和优点。

数据库

1.有一个银行客户资金数据库,包括客户信息、资金流水、表结构如下: 客户号 客户姓名 客户年龄 帐户资金余额 CID CName CAge CBalance 资金流水Currents,每发生一次业务(资金存取),就记录一条记录 业务日期 业务时间 流水号 客户号 业务类型 发生金额 BDate BTime BID CID BType BAmount 1. 存入 2. 支取 注:业务日期2011年1月10日用字符串“20110110”表示 写出完成以下要求的SQL语句:

1) 找出资金余额大于1000万的客户,并按资金余额从大到小排序 2) 找出2011年没有发生任何业务的客户号、客户姓名 3) 对于业务类型为支取的,把发生金额改成用负数表示 4) 找出平均发生金额大于等于1000元的客户号 5) 资金流水表中建立客户号的索引

2.某银行信贷子系统有如下关系表:

A. 客户信息表(客户编码、客户姓名、银行卡号、客户状态、客户级别)主键:客户编码

B. 贷款信息表(合同编码、客户编码、贷款金额、贷款余额、贷款利率、合同生效日期)主键:合同编号

C. 还款明细表(合同编码、客户编码、还款期次、还款金额、还款日期)主键:合同编号,还款期次 请根据以上信息,完成如下题目:

1. 请列出客户编号为“123456”客户的贷款余额和合同号; 2. 请列出有两笔贷款的客户信息; 3. 请将A类客户的贷款利率优惠10%; 4. 请列出本期(加入期次为“201210”)暂未还款的贷款明细; 5. 请列出2012年生效的合同明细。

3.设有如下表结构: 表明:g_cardapply

字段(字段名/类型/长度):

g _applyno varchar 8; //申请单号(关键字)

16