2014 年华为校园招聘 JAVA 类笔试试题
一 单 项 选 择 题
1.Java 是 从 ( )语 言 改 进 重 新 设 计 。
A.Ada
B.C++
C.Pasacal
D.BASIC
答 案 : B
2.下 列 语 句 哪 一 个 正 确 ( )
A. Java 程 序 经 编 译 后 会 产 生 machine code
B. Java 程 序 经 编 译 后 会 产 生 byte code
C. Java 程 序 经 编 译 后 会 产 生 DLL
D. 以 上 都 不 正 确
答 案 : B
3.下 列 说 法 正 确 的 有 ( )
A. class 中 的 constructor 不 可 省 略
B. constructor 必 须 与 class 同 名 , 但 方 法 不 能 与 class 同 名
C. constructor 在 一 个 对 象 被 new 时 执 行
D. 一 个 class 只 能 定 义 一 个 constructor
答 案 : C
4.提 供 Java 存 取 数 据 库 能 力 的 包 是 ( )
A.java.sql
B.java.awt
C.java.lang
D.java.swing
答 案 : A
5.下 列 运 算 符 合 法 的 是 ( )
A.&&
B.<>
C.if
D.:=
答 案 : A
6.执 行 如 下 程 序 代 码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后 , C 的
值 是 ( )
A.0
B.1
C.-1
D.死 循 环
答 案 : C
7.下 列 哪 一 种 叙 述 是 正 确 的 ( )
A. abstract 修 饰 符 可 修 饰 字 段 、 方 法 和 类
B. 抽 象 方 法 的 body 部 分 必 须 用 一 对 大 括 号 { }包 住
C. 声 明 抽 象 方 法 , 大 括 号 可 有 可 无
D. 声 明 抽 象 方 法 不 可 写 出 大 括 号
答 案 : D
8.下 列 语 句 正 确 的 是 ( )
A. 形 式 参 数 可 被 视 为 local variable
B. 形 式 参 数 可 被 字 段 修 饰 符 修 饰
C. 形 式 参 数 为 方 法 被 调 用 时 , 真 正 被 传 递 的 参 数
D. 形 式 参 数 不 可 以 是 对 象
答 案 : A
9.下 列 哪 种 说 法 是 正 确 的 ( )
A. 实 例 方 法 可 直 接 调 用 超 类 的 实 例 方 法
B. 实 例 方 法 可 直 接 调 用 超 类 的 类 方 法
C. 实 例 方 法 可 直 接 调 用 其 他 类 的 实 例 方 法
D. 实 例 方 法 可 直 接 调 用 本 类 的 类 方 法
答 案 : D
二 、 多 项 选 择 题
1.Java 程 序 的 种 类 有 ( )
A.类 (Class)
B.Applet
C.Application
D.Servlet
2.下 列 说 法 正 确 的 有 ( )
A. 环 境 变 量 可 在 编 译 source code 时 指 定
B. 在 编 译 程 序 时 , 所 能 指 定 的 环 境 变 量 不 包 括 class path
C. javac 一 次 可 同 时 编 译 数 个 Java 源 文 件
D. javac.exe 能 指 定 编 译 结 果 要 置 于 哪 个 目 录 (directory)
答 案 : BCD
3.下 列 标 识 符 不 合 法 的 有 ( )
A.new
B.$Usdollars
C.1234
D.car.taxi
答 案 : ACD
4.下 列 说 法 错 误 的 有 ( )
A. 数 组 是 一 种 对 象
B. 数 组 属 于 一 种 原 生 类
C. int number=[]={31,23,33,43,35,63}
D. 数 组 的 大 小 可 以 任 意 改 变
答 案 : BCD
5.不 能 用 来 修 饰 interface 的 有 ( )
A.private
B.public
C.protected
D.static
答 案 : ACD
6.下 列 正 确 的 有 ( )
A. call by value 不 会 改 变 实 际 参 数 的 数 值
B. call by reference 能 改 变 实 际 参 数 的 参 考 地 址
C. call by reference 不 能 改 变 实 际 参 数 的 参 考 地 址
D. call by reference 能 改 变 实 际 参 数 的 内 容
答 案 : ACD
7.下 列 说 法 错 误 的 有 ( )
A. 在 类 方 法 中 可 用 this 来 调 用 本 类 的 类 方 法
B. 在 类 方 法 中 调 用 本 类 的 类 方 法 时 可 直 接 调 用
C. 在 类 方 法 中 只 能 调 用 本 类 中 的 类 方 法
D. 在 类 方 法 中 绝 对 不 能 调 用 实 例 方 法
答 案 : ACD
8.下 列 说 法 错 误 的 有 ( )
A. Java 面 向 对 象 语 言 容 许 单 独 的 过 程 与 函 数 存 在
B. Java 面 向 对 象 语 言 容 许 单 独 的 方 法 存 在
C. Java 语 言 中 的 方 法 属 于 类 中 的 成 员 (member)
D. Java 语 言 中 的 方 法 必 定 隶 属 于 某 一 类 (对 象 ), 调 用 方 法 与 过 程 或 函 数 相
同
答 案 : ABC
9.下 列 说 法 错 误 的 有 ( )
A. 能 被 java.exe 成 功 运 行 的 java class 文 件 必 须 有 main()方 法
B. J2SDK 就 是 Java API
C. Appletviewer.exe 可 利 用 jar 选 项 运 行 .jar 文 件
D. 能 被 Appletviewer 成 功 运 行 的 java class 文 件 必 须 有 main()方 法
三 、 判 断 题
1.Java 程 序 中 的 起 始 类 名 称 必 须 与 存 放 该 类 的 文 件 名 相 同 。 ( ) 答 案 : 正
确
2.Unicode 是 用 16 位 来 表 示 一 个 字 的 。 ( ) 答 案 : 正 确
3.原 生 类 中 的 数 据 类 型 均 可 任 意 转 换 。 ( ) 答 案 : 错 误
四 , 编 程 题
1: 输 入 1--50 个 数 字 , 求 出 最 小 数 和 最 大 数 的 和 输 入 以 逗 号 隔 开
结 果 :
这 个 题 用 C 做 , 要 考 虑 的 东 西 太 多 了
如 果 用 java 做 , 可 以 用 split 函 数 , 值 得 尝 试 。
2.简 述 有 几 种 排 序 方 法 , 并 且 实 现 快 速 排 序 。
3.JSP 写 入 内 容 到 文 件 有 哪 几 种 方 式 , 实 现 其 中 至 少 两 种 。
4. 有 一 对 兔 子 , 从 出 生 后 第 3 个 月 起 每 个 月 都 生 一 对 兔 子 , 小 兔 子 长 到 第
四 个 月 后 每 个 月 又 生 一 对 兔 子 ,假 如 兔 子 都 不 死 ,问 每 个 月 的 兔 子 总 数 为 多 少 ? 5.
判 断 101-200 之 间 有 多 少 个 素 数 , 并 输 出 所 有 素 数 。
程 序 分 析 : 判 断 素 数 的 方 法 : 用 一 个 数 分 别 去 除 2 到 sqrt(这 个 数 ), 如 果
能 被 整 除 ,
则 表 明 此 数 不 是 素 数 , 反 之 是 素 数 。
public class exp2{
public static void main(String args[]){
int i=0;
for(i=1;i<=20;i++)
System.out.println(f(i));
}
public static int f(int x)
{
if(x==1 || x==2)
return 1;
else
return f(x-1)+f(x-2);
}
}
5. 判 断 101-200 之 间 有 多 少 个 素 数 , 并 输 出 所 有 素 数 。
程 序 分 析 : 判 断 素 数 的 方 法 : 用 一 个 数 分 别 去 除 2 到 sqrt(这 个 数 ), 如 果
能 被 整 除 ,
则 表 明 此 数 不 是 素 数 , 反 之 是 素 数 。
import java.util.ArrayList;
public class Sushu {
public static void main(String[] args) {
ArrayList list = new ArrayList();
for(int i =101;i<=200;i++){
if(isPrime(i))
list.add(i);
}
System.out.println(list+"\n 共 有 "+list.size()+"个 素 数 ");
}
public static boolean isPrime(int i){
boolean flag = true;
for(int j =2;j<=Math.sqrt(i);j++){
if(i%j==0){
flag = false;
}
}
return flag;
}
}
6.取 一 个 整 数 a 从 右 端 开 始 的 4~ 7 位 。
程 序 分 析 : 可 以 这 样 考 虑 :
(1)先 使 a 右 移 4 位 。
(2)设 置 一 个 低 4 位 全 为 1,其 余 全 为 0 的 数 。 可 用 ~(~0 < <4)
(3)将 上 面 二 者 进 行 &运 算