您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页java基础笔试题

java基础笔试题

来源:爱go旅游网
 1

武汉钢信软件JAVA基础考试试卷 题号 得分 阅卷 一 二 三 总得分 姓名: 电话:

一、选择题(单选,多选混合,少选错选不得分)(每题 2分,共30分)

请将选择题答案写在对应题号下的表格内(写在其它地方无效)。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

1. 设int型变量x=2,y=4,z=6,则表达式x+=z++/y++的值是

A.3

B.3.4 C.3.5

D.4

2. 下列代码中,将引起一个编译错误的行是

1)public class Test{ 2)intm,n;

3) public Test() {}

4) public Test(int a) {m=a;}

5) public static void main(String args[]){ 6) Test t1,t2; 7)intj,k; 8) j=0;k=0;

9) t1=new Test(); 10) t2=new Test(j,k); 11) } 12)} A.第3行 B.第5行 C.第6行 D.第10行

3. 一个servlet的生命周期不包括方法?

A.init()方法

B.invalidate()方法 D.destroy()方法

C.service()方法

4. java.lang包的()方法比较两个对象是否相等,相等返回true。

A.toString()B.equals()C.compare()D.以上所有选项都不正确

2

5.HttpServletRequest对象的 方法能够获取一个表单参数的值:

A.getQuaryString() B.getPathInfo() C.getParameter()

6.关于Map和List,下面说法正确的是( )。 A.Map继承List

B.List中可以保存Map或List

C.Map和List只能保存从数据库中取出的数据 D.Map的value可以是List或Map

7.给定如下Java代码,编译运行的结果是()。 import java.util.*; public class Test {

public static void main(String[] args) { LinkedList list=new LinkedList(); list.add(“A”); list.add(2,”B”);

String s=(String)list.get(1); System.out.println(s); } }

A.编译时发生错误B.运行时引发异常

C.正确运行,输出:AD.正确运行,输出:B

8. 执行下面的代码会引发()异常。 String str=null;

String strTest=new String(str);

A.InvalidArgumentExceptionB.IllegalArgumentException C.NullPointerExceptionD.ArithmeticException

9.多态的表现形式有

A) 重写 B) 抽象 C) 继承 D) 封装

D.getAttribute()

10.在HTML上,将表单中INPUT元素的TYPE属性值设置为( )时,用于创建重置按钮。 A. reset B. set C. button D. image

11. 下列语句能够正确在一个HTML页面中导入在同一目录下的“StyleSheet1.css”样式表 的是( )。

A.

B. C. < link rel=”stylesheet1.css” type=”text/css”>

D.

3

12. 在使用super 和this关键字时,以下描述正确的是

A. 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过

B. super()和this()不一定要放在构造方法内第一行 C. this()和super()可以同时出现在一个构造函数中

D. this()和super()可以在static环境中使用,包括static方法和static语句块

13. 下列关于类和对象的叙述中,正确的是

A.类是对象的模板,一个类仅能生成一个对象 B.对象是类的模板,一个对象仅能生成一个类 C.类是对象的模板,一个类是一组对象的集合 D.对象是类的模板,一个对象是一组类的集合

14.以下关于软件开发文档的叙述中,错误的是

A.软件开发是程序及其相应文档的生产过程

B.软件开发过程中的重要信息需要固化在文档中,以便积累开发经验 C.由于担心设计人员中途离职,所以要让他们写下文档

D.在软件开发过程中,面对面交流并不可靠,应当完全用文档来代替 15.阅读下面的代码

package test;

public class FatherClas { public FatherClass() {

System.out.println(\"FatherClass Create\"); } } 子类: package test;

import test.FatherClass;

public class ChildClass extends FatherClass { public ChildClass() {

System.out.println(\"ChildClass Create\"); }

public static void main(String[] args) {

FatherClass fc = new FatherClass(); ChildClass cc = new ChildClass(); } }

4

在控制台中执行如下命令 C:\\>java test.ChildClass

请选择正确的输出结果: A. FatherClass Create ChildClass Create FatherClass Create

B. FatherClass Create

ChildClass Create ChildClass Create C. FatherClass Create FatherClass Create ChildClass Create D. ChildClass Create FatherClass Create ChildClass Create

二、代码查错(每题4分,共20分)

正确的打勾;错误的打叉,并描述错误原因

1. 错原因 abstract方法申明后面不能加{},应该以;结尾 2. 错原因 局部变量前不能带访问修饰符 3. 错原因 变量i没有初始化

4. 错原因 字符串equals调用可能引起空指针异常。 5. 错原因 return语句后面的代码无法执行。

1. abstract class Name {

private String name;

public abstract boolean isStupidName(String name) {} } 2. public class Something {

voiddoSomething () {

private String s = \"\";

int l = s.length(); } }

3. class Something {

final int i;

public void doSomething() { System.out.println(\"i = \" + i); } }

4. Class Demo {

public void compareName(String name){

System.out.println(“is Tom ? ” + name.equals(“Toms”)); }

}

5. public class Something {

public int addOne(final int x) { return x;

x--; }

5

}

三、综合题(共50分)

1.举办一个单循环淘汰赛制的体育比赛,有N个运动队参加,每轮相邻两个队伍仅比赛一场,败者立刻淘汰,胜者晋级下一轮,当轮比赛队伍为奇数时,则选一队轮空直接晋级下一轮。只到最后产生胜者。 规则解释如下图:

A队 B队 ① 总共A、B、C、D、E五队参赛: 第一轮:场次① ---- A vs B,B获胜

场次② ---- C vs D, C获胜 本轮E队轮空

④ C队 D队 冠军

② ③ 第二轮:场次③ ---- C vs E,E获胜

本轮B队轮空

第三轮:场次④---- B vs E, E获得冠军 总共进行了4场比赛

E队

要求:a.请用java设计一个递归函数,用于计算出n个球队参加该赛制比赛,直到角逐出冠军,一共需要进行多少场比赛;

答题区(请在横线处作答):

b.不允许出现全局变量,代码尽量简洁;

C.在main函数中调用该递归函数计算出:当99个队伍参加该比赛,总场次数是多少。

(只需写出调用方式,传入具体参数即可,不必计算出结果)。(10分)

public class Demo {

public static void main(String[] args) throws Exception {

intteamNum = 99; //参赛的球队数量 inttotalGamesNum = ;

System.out.println(“当” + teamNum + ”只球队参加比赛时,总共需要进行”+

totalGamesNum+”场比赛”):

}

/**

* @param n 本轮轮球队个数 * @return 本轮结束后累计场次 */

public Integer playAGame(Integer n) throws Exception { }

_____________________________________________________ _____________________________________________________

6

}

2.试编写一个List类型的对象,只能存储通讯录(Contacts类、存储同学的姓名和联系方

式),并输出通讯录的列表到控制台。定义类、定义函数、在main函数中执行并输出(9

分)

3.创建一个HashMap对象,添加一些学生的姓名和成绩:张三:90分,李四,83分。接

着从HashMap中获取并他们的姓名和成绩,然后把李四的成绩改为100分,再次输出他们的信息。(9分)

7

4.根据下面的数据库表结构,回答问题(22分)

 EMP表(员工表):包含四个字段(EMP_NO_, DEPT_NO_, FIRST_NAME_, SALARY_),

主键:EMP_NO_

 DEPT表(部门表):包含两个字段(DEPT_NO_, DEPT_NAME_),主键:DEPT_NO_  每个员工都有所属部门,每个部门至少有一位员工。 要求:

第一个查询:查询出部门名称为‘市场部’的所有员工的信息,查询结果(6分):

员工编号 姓名

解:SELECT t1.EMP_NO员工编号,t1.FIRST_NAME姓名 FROM DEPT t2 JOIN EMP t1 ON t2.DEPT_NO=t1.DEPT_NO WHERE t2.DEPT_NAME=’市场部’

第二个查询:查询员工数大于5的部门,并按员工数降序排序,查询结果(8分):

部门编号 员工人数 解: SELECT DEPT_NO部门编号 ,COUNT(DEPT_NO_) 员工人数FROM EMP GROUP BY DEPT_NO HAVING COUNT(DEPT_NO_) > 5 ORDER BY COUNT(DEPT_NO_) DESC

第三个查询:查询所有员工的工资,小于3000元(含3000)的加500;3000-5000(含5000)的加300,5000以上不加,查询结果(8分):

员工编号

解:Select EMP_NO员工编号,FIRST_NAME姓名, Case when SALARY<=3000 then SALARY+500

WhenSALARY>3000 and SALARY<=5000then SALARY+300 Else SALARY

end as SALARY From Emp

姓名 调整后工资

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务