IT培训网 - IT职场人学IT技术上IT培训网
java程序员常见的面试笔试题有哪些
时间:2018-07-04 13:06:43 来源:Java培训网 作者:IT培训网 已有:名学员访问该课程
在求职面试中,对于技术人员来讲,分有初试、复试环节,对于IT行业人才而言,又分为笔试题和机试题,无论是哪个环节,都是至关的重要,下面就程序员面试中的笔试题做如下分析汇总,望助广大求职者一臂之力。
java程序员笔试题有哪些?
一、选择题(每题2分共18分)
1. 下面哪些是Thread类的方法()
A start() B run() C exit() D getPriority()
2. 下列说法正确的有()
A. class中的constructor不可省略
B. constructor必须与class同名,但方法不能与class同名
C. constructor在一个对象被new时执行
D.一个class只能定义一个constructor
3. 下列说法正确的是()
A LinkedList继承自List B AbstractSet继承自Set
C HashSet继承自AbstractSet D WeakMap继承自HashMap
4. 0.6332的数据类型是()
A float B double C Float D Double
5. Java接口的修饰符可以为()
A private B protected C final D abstract
6. 不通过构造函数也能创建对象吗()
A 是 B 否
7. getCustomerInfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOException,将会输出什么结果()
publicvoidgetCustomerInfo() {
try{
// do something that may cause an Exception
} catch(java.io.FileNotFoundException ex) {
System.out.print("FileNotFoundException!");
} catch(java.io.IOException ex) {
System.out.print("IOException!");
} catch(java.lang.Exception ex) {
System.out.print("Exception!");
}
}
A IOException! B IOException!Exception!
C FileNotFoundException!IOException!
D FileNotFoundException!IOException!Exception!
8. 下面代码的运行结果为:()
importjava.io.*;
importjava.util.*;
publicclassfoo{
publicstaticvoidmain (String[] args){
String s;
System.out.println("s=" + s);
}
}
A 代码得到编译,并输出“s=”
B 代码得到编译,并输出“s=null”
C 由于String s没有初始化,代码不能编译通过
D 代码得到编译,但捕获到 NullPointException异常
9. System.out.println("5" + 2);的输出结果应该是()。
A52 B7 C2 D5
二、问答题(每题2分共43分)
1、错误和异常的区别(Error vs Exception)
2、Java 中堆和栈有什么区别?
3、 “a==b”和”a.equals(b)”有什么区别?
4. Hashtable 与 HashMap 有什么不同之处?
5、Math.round(11.5) 等于多少?Math.round(-11.5)等于多少?
6、数组有没有length()方法?String有没有length()方法?
7、在Java中,如何跳出当前的多重嵌套循环?
8、构造器(constructor)是否可被重写(override)?
9、是否可以继承String类?
10、String和StringBuilder、StringBuffer的区别?
11、char 型变量中能不能存贮一个中文汉字,为什么?
12、抽象类(abstract class)和接口(interface)有什么异同?
13、String s = new String(“xyz”);创建了几个字符串对象?
14、接口是否可继承(extends)接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete class)?
15、数据类型之间的转换:
- 如何将字符串转换为基本数据类型?
- 如何将基本数据类型转换为字符串?
16、try{}里有一个return语句,那么紧跟在这个try后的finally{}里的代码会不会被执行,什么时候被执行,在return前还是后?
17、列出一些你常见的运行时异常?
18、阐述final、finally、finalize的区别。
19、阐述ArrayList、Vector、LinkedList的存储性能和特性。
20、List、Map、Set三个接口存取元素时,各有什么特点?
21、启动一个线程是调用run()还是start()方法?
三、代码题(每题2分共4分)
1、下面程序的运行结果是什么?
public class Dervied extends Base {
private String name = "dervied";
public Dervied() {
tellName();
printName();
}
public void tellName() {
System.out.println("Dervied tell name: " + name);
}
public void printName() {
System.out.println("Dervied print name: " + name);
}
public static void main(String[] args){
new Dervied();
}
}
class Base {
private String name = "base";
public Base() {
tellName();
printName();
}
public void tellName() {
System.out.println("Base tell name: " + name);
}
public void printName() {
System.out.println("Base print name: " + name);
}
}
2. 下面程序的运行结果是()
String str1 = "hello";
String str2 = "he" + newString("llo");
System.err.println(str1 == str2);
四、 数据库部分(写出SQL语句)
1.表 EMPLOYEES 结构:
EMPLOYEE_ID NUMBER Primary Key,
FIRST_NAME VARCHAR2(25),
LAST_NAME VARCHAR2(25),
Salary NUMBER(8,2),
HiredDate DATE,
Departmentid NUMBER(2)
表 Departments 结构:
Departmentid number(2) Primary Key,
DepartmentName VARCHAR2(25).
(1)基于上述EMPLOYEES表写出查询:写出雇用日期在今年的,或者工资在[1000,2000]之间的,或者员工姓名(last_name)以’Obama’打头的所有员工,列出这些员工的全部个人信息。(4分)
(2) 基于上述EMPLOYEES表写出查询:查出部门平均工资大于1800元的部门的所有员工,列出这些员工的全部个人信息。 (4分)
(3) 基于EMPLOYEES表写出查询:查出个人工资高于其所在部门平均工资的员工,列出这些员工的全部个人信息及该员工工资高出部门平均工资百分比。(4分)
2. 已知表A(ID,Name)
1)查询A(ID,Name)表中第31至40条记录,ID作为主键可能是不是连续增长的列。(3分)
2) 查询表A中存在NAME重复三次以上的记录。(4分)
3. 已知关系模式:(10分)
S (SNO,SNAME) 学生关系。SNO 为学号 ,SNAME 为姓名。
C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师。
SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩。
要求实现如下5个查询:
1) 找出没有选修过“李明”老师讲授课程的所有学生姓名。
2) 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩。
3) 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名。
4) 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号。
5) 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩。
每期开班座位有限.0元试听抢座开始!
温馨提示 : 请保持手机畅通,咨询老师为您
提供专属一对一报名服务。