中科金财Java开发工程师笔试题带答案
中科金财Java开发工程师笔试题带答案
Java开发工程师笔试试题(请不要在试题上留任何痕迹,所有答案均写在答题纸上)一.编程题(共26分)1.任意写出一种排序算法。
(6分)public void sort(int [] array){//代码区}2.求 1+2+3+..n(不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句)(8分)public int sum(int n){//代码区return 0;}3.完成下面方法,输入一个整数,输出如下指定样式图案。
(12分)输入:3,输出:1*2*37*8*94*5*6输入:4输出:1*2*3*49*10*11*1213*14*15*165*6*7*8public void drawNumPic(int n){//代码区}二.选择题(定项选择每题3分,不定项选择每题4分,共63分)1.在基本JAVA类型中,如果不明确指定,整数型的默认是__类型,带小数的默认是__类型?( B )A.int floatB.int doubleC.long floatD.long double2.只有实现了__接口的类,其对象才能序列化 ( A )A.SerializableB.CloneableparableD.Writeable3.代码System. out. println(10 % 3 * 2);将打印出?( B )A. 1B.2C.4D.64.以下程序运行的结果为( A )public class Example extends Thread{@Overridepublic void run(){try{Thread.sleep(1000);}catch (InterruptedException e){e.printStackTrace();}System.out.print("run");}public static void main(String[] args){ Example example=new Example();example.run();System.out.print("main");}}A.run mainB.main runC.mainD.runE.不能确定5.下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?( B )A.实例变量指的是类中定义的变量,即类成员变量,如果没有初始化,会有默认值B.局部变量指的是在方法中定义的变量,如果没有初始化,会有默认值C.类变量指的是用static修饰的属性D.final变量指的是用final 修饰的变量6.在如下所示的类Test中,共有(D)个构造方法。
Java开发工程师招聘笔试题及解答(某大型国企)
招聘Java开发工程师笔试题及解答(某大型国企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1.在Java 中,以下哪个关键字用于定义一个接口?A. classB. interfaceC. extendsD. implements2.下列关于Java 类和对象的说法,正确的是?A. 只有类可以创建对象,方法不能创建对象B. 对象是类的实例,类是对象的模板C. 方法不能访问类的成员变量,只能访问局部变量D. 类的成员变量只能在方法内部访问3、关于Java中的异常处理,以下哪种说法是正确的?A. 只有运行时异常才可以通过try-catch块捕获处理。
B. 自定义异常类时必须继承自Throwable类。
C. 异常处理中的finally块主要用于处理异常情况。
D. 使用try-catch块处理异常时,必须同时有finally块。
4、关于Java集合框架(Java Collections Framework),以下说法不正确的是?A. Java集合框架主要包括两种类型的集合:List和Set。
B. List中的元素可以重复且有序。
C. Set中的元素是唯一的且无序的。
D. Java集合框架不提供对集合元素的排序功能。
5.在Java中,以下哪个关键字用于定义一个接口?A. interfaceB. extendsC. implementsD. abstract6.下列哪个关键字用于实现多态?A. instanceofB. newC. thisD. super7、关于Java中的异常处理,以下哪个说法是正确的?(A)try块中一定要包含可能抛出异常的代码。
(B)catch块中只能捕获异常,不能包含其他逻辑处理代码。
(C)finally块中的代码一定会被执行,无论是否发生异常。
(D)throw关键字只能用于方法内部抛出异常,不能用于方法间传递异常信息。
8、关于Java中的集合框架,以下哪个说法是不正确的?(A)Java集合框架提供了多种类型的集合类,如List、Set、Map等。
Java开发工程师招聘笔试题及解答2024年
2024年招聘Java开发工程师笔试题及解答(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪个不是Java中的基本数据类型?A、intB、floatC、StringD、boolean2、在Java中,以下哪个关键字用于声明一个类?A、classB、structC、enumD、interface3、关于Java中的String类,以下描述正确的是:A. String类是final类,无法继承。
B. String类是可变的,可以对其进行修改。
C. String类是可变的,每次对String对象的操作都会创建新的对象。
D. String类是不可变的,每次对String对象的操作都会创建新的对象。
4、关于Java中的垃圾回收机制,以下描述不正确的是:A. 垃圾回收器可以自动回收不再使用的对象占用的内存空间。
B. 垃圾回收机制是Java自动管理内存的一种方式,程序员无需手动释放内存。
C. 垃圾回收器会定期检查并回收那些不再有引用的对象。
D. 堆内存中的所有对象在不再有引用后,会自动关联到垃圾回收机制中,即成为垃圾,等待垃圾回收器来回收。
5、以下哪个Java版本正式支持模块化系统“Java Platform Module System”(JPMS)?A、Java 8B、Java 9C、Java 10D、Java 116、在Java中,以下哪个关键字用来声明一个线程?A、threadB、runC、ThreadD、start7、以下哪个关键字是Java中用于实现多线程的同步机制?A. synchronizedB. transientC. volatileD. static8、以下哪个选项不是Java中的访问修饰符?A. privateB. publicC. protectedD. friendly9、在Java中,以下哪个选项不是访问修饰符?A. publicB. privateC. protectedD. friend 10、下列关于Java异常处理的说法中,哪一个是正确的?A. Java程序必须捕获并处理所有抛出的异常。
java开发工程师初级考试题库及答案
java开发工程师初级考试题库及答案1. Java基础- 1.1 什么是Java虚拟机(JVM)?- JVM是一种可以执行Java字节码的虚拟机。
它为Java程序提供了一个与平台无关的执行环境。
- 1.2 Java中的数据类型有哪些?- Java中的数据类型分为基本数据类型和引用数据类型。
基本数据类型包括:int、long、float、double、char、byte、short、boolean。
引用数据类型包括:类、接口、数组。
- 1.3 解释Java中的封装、继承和多态。
- 封装:将对象的状态(属性)和行为(方法)封装在类中,隐藏内部实现细节。
- 继承:允许一个类(子类)继承另一个类(父类)的属性和方法。
- 多态:允许不同类的对象对同一消息做出响应,即同一个方法调用可以产生不同的行为。
2. 面向对象编程- 2.1 什么是类和对象?- 类是具有相同属性和方法的对象的蓝图。
对象是根据类创建的实例。
- 2.2 什么是构造方法?- 构造方法是在创建对象时被调用的方法,用于初始化对象的状态。
- 2.3 什么是接口?- 接口是定义方法签名的抽象类型,它不能包含实现,但可以被类实现。
3. Java集合框架- 3.1 List接口有哪些实现类?- List接口的实现类包括:ArrayList、LinkedList、Vector等。
- 3.2 Map接口有哪些实现类?- Map接口的实现类包括:HashMap、TreeMap、Hashtable等。
- 3.3 如何在ArrayList中添加元素?- 可以使用`add()`方法在ArrayList中添加元素。
4. 异常处理- 4.1 Java中异常分为哪两种类型?- Java中异常分为受查异常(checked exceptions)和非受查异常(unchecked exceptions)。
- 4.2 如何捕获异常?- 使用`try-catch`块来捕获和处理异常。
Java开发工程师招聘笔试题与参考答案(某大型央企)2024年
2024年招聘Java开发工程师笔试题与参考答案(某大型央企)一、单项选择题(本大题有10小题,每小题2分,共20分)1、关于Java语言的特点,以下说法错误的是:A. Java是一种面向对象的编程语言B. Java程序可以在任何操作系统上运行C. Java语言不支持多线程编程D. Java具有自动内存管理功能答案:C解析:Java语言支持多线程编程,这是其重要的特性之一。
因此选项C是错误的。
2、在Java中,关于异常处理的说法错误的是:A. 使用try-catch块可以捕获并处理异常B. 抛出的异常必须在当前方法中处理C. 使用throw关键字可以抛出异常D. 异常是程序运行时可能出现的问题答案:B解析:在Java中,如果某个方法没有处理抛出的异常,可以使用throws关键字声明要抛出的异常,并不一定要在当前方法中处理。
因此选项B是错误的。
3、在Java中,以下哪个关键字用于定义一个接口?A. interfaceB. extendsC. implementsD. abstract答案:A解析:在Java中,interface关键字用于定义一个接口。
接口是一种完全抽象的类,它只能包含抽象方法的声明和常量。
extends关键字用于继承类或接口,implements 关键字用于实现接口,而abstract关键字用于声明抽象方法或抽象类。
4、在Java中,以下哪个注解用于标记一个方法是接口中的默认方法?A. @OverrideB. @DeprecatedC. @FunctionalInterfaceD. @Retention答案:C解析:在Java中,@FunctionalInterface注解用于标记一个方法是接口中的默认方法。
这个注解不是必需的,但它可以帮助编译器检查该接口是否只有一个抽象方法,如果没有,则会报错。
@Override注解用于表示方法重写了父类或接口中的方法,@Deprecated注解用于标记不推荐使用的方法或类,@Retention注解用于指定注解的保留策略。
JAVA工程师笔试题(答案版)
JAVA工程师笔试题一、选择题1、如下代码public class Test {public int aMethod() {static int i = 0;i++;return i;}public static void main (String args[]) {Test test = new Test();test.aMethod();int j = test.aMethod();System.out.println(j);}}输出结果是什么?A. 0B. 1C. 2D. 编译失败2. 如下代码int i =1,j =10;do {if(i++> --j) {continue;}} while (i <5);System.out.println("i = " +i+ "and j = "+j);输出结果是什么?A. i = 6 and j = 5B. i = 5 and j = 5C. i = 6 and j = 5D. i = 5 and j = 63. 如下代码:public class SwitchTest {public static void main(String[] args) {System.out.println("value = " + switchIt(4));}public static int switchIt(int x) {int j = 1;switch (x) {case 1: j++;case 2: j++;case 3: j++;case 4: j++;case 5: j++;default: j++;}return j + x;}}输出结果是什么?A. value = 3B. value = 4C. value = 5D. value = 6E. value = 7F. value = 84. 在接口中以下哪条定义是正确的? (多选)A. void methoda();B. public double methoda();C. public final double methoda();D. static void methoda(double d1);E. protected void methoda(double d1);5. 如下代码:public void test(int x) {int odd = x%2;if (odd) {System.out.println("odd);} else {System.out.println("even");}}哪个描述正确?A. 编译失败.B. "odd" 永远被输出.C. "even" 永远被输出D. "odd" 输出x的值,E. "even" 输出x的值6. 如下代码:public class X {public X aMethod() { return this;}}public class Y extends X {}哪些方法能加到Y类的定义中?A. public void aMethod() {}B. private void aMethod() {}C. public void aMethod(String s) {}D. private Y aMethod() { return null; }E. public X aMethod() { return new Y(); }7. 如下代码:public class X {public static void main(String [] args) {try {badMethod();System.out.print("A");}catch (Exception ex) {System.out.print("C");}finally {System.out.print("B");}System.out.print("D");}public static void badMethod() {throw new Error();}}结果是什么?A. ABCDB. 编译失败.C. 显示C,退出程序.D. 显示B,退出程序.E. 显示BCD,退出程序.8. 如下代码:public class Foo {public static void main(String[] args) {try {return;} finally {System.out.println( "Finally" );}}}输出结果是什么?A. FinallyB.编译失败C. 代码正常运行但没有任何输出.D. 运行时抛出异常9. 如下代码:class Base {Base() { System.out.print("Base"); }}public class Alpha extends Base {public static void main( String[] args ) {new Alpha();new Base();}}结果是什么?A. BaseB. BaseBaseC. 编译失败.D. 代码运行但没有输出.E. 运行时抛出异常.10、下面哪个语句是创建数组的正确语句?( )A . float f[][] = new float[6][6];B . float []f[] = new float[6][6];C . float f[][] = new float[][6];D . float [][]f = new float[6][6];E . float [][]f = new float[6][];二、问答题1、String和StringBuffer的区别2、MVC的各个部分都有那些技术来实现?如何实现?3、什么是java序列化,如何实现java序列化?4、什么是单例模式?写一个单例类。
中级Java软件开发工程师笔试题(附答案)
中级Java软件开发工程师笔试题(附答案)问题:中级Java软件开发工程师笔试题(附答案)回答:Part I ,总计70分-一、单选题(共12题,每题2分,共24分)1.下面关于Java的表述有错误的是________A.Java中没有sizeof操作符,所有数据类型的长度都是确定的,与平台无关。
B.在Java中,局部变量不会被自动初始化,需要显式的赋初值。
C.Java中的instanceof运算符,可以判断一个对象是否属于某个类的实例。
D.一个Java文件里可以有多个public类,但Java文件名必须和包含main方法的那个public类名精确一致。
2.下面关于Java中static关键字的表述错误的是________A.被static修饰的类成员变量在编译时由内存分配一块空间,直到程序停止运行才会被释放。
B.被static修饰的类方法只能访问其自身类未被static修饰的实例方法,而不能访问其他类的。
C.被static修饰的类方法不能使用this关键字。
D.在没有创建该类的对象时,该类中用static修饰的类方法就可以被调用。
3.下面关于Java中abstract关键字的表述有错误的是________ A.用abstract修饰不在类内实现的方法,称为抽象方法;抽象方法必须在子类派生时被重载。
B.用abstract修饰的类为抽象类;抽象类可以同时被static或final关键字修饰。
C.抽象类中不一定包含抽象方法,但包含抽象方法的类一定要声明为抽象类。
D.如果一个类被定义为抽象类,则该类不能进行实例化。
4.下面关于Java中垃圾回收(gc)的表述有错误的是_______ A.在String str1 = Hello String str2 = str1;str1 = null;中,对象Hello 不会被垃圾回收。
B.调用Runtime.getRuntime().gc()会立即启动垃圾回收线程对当前程序进行垃圾回收。
Java开发工程师招聘笔试题及解答(某大型央企)2024年
2024年招聘Java开发工程师笔试题及解答(某大型央企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、关于Java语言的特点,以下哪个描述是不正确的?()A. Java是一种面向对象的编程语言。
B. Java程序可以直接在机器上运行。
C. Java具有跨平台性,可以运行在任何操作系统上。
D. Java支持多线程编程。
2、下列关于Java集合框架的说法中,错误的是?()A. Java集合框架是Java用来管理各种数据类型的容器类的一个框架。
B. Java集合框架包括List、Set、Queue等接口和对应的实现类。
C. Map不是Java集合框架的一部分。
D. 使用Java集合框架可以简化数据管理和处理。
3、关于Java中的异常处理,以下哪种说法是正确的?A. 捕获异常必须使用try-catch块,抛出异常必须使用throw关键字。
B. 只有已检查的异常需要try-catch处理,未检查的异常无需处理。
C. 异常处理中的finally块主要用于处理程序运行过程中可能出现的最严重的错误情况。
D. 在一个方法中同时抛出多个异常时,只需要在最外层使用try-catch块即可。
4、关于Java中的集合框架,以下哪种说法是不正确的?A. Java集合框架提供了一套用于表示和操作集合的接口和类。
B. List集合是一种有序的集合,它存储的元素可以重复并且具有索引。
C. Set集合是一种无序的集合,它不包含重复元素,其性能通常优于List。
D. Map集合存储键值对,键是唯一的,值可以重复。
5、在Java中,以下哪个关键字用于定义一个接口?A. interfaceB. extendsC. implementsD. abstract6、在Java中,以下哪个注解用于标记一个类作为测试类?A. @TestB. @RetentionC. @OverrideD. @Deprecated7、在 Java 中,以下哪个关键字用于定义一个接口?A. classB. interfaceC. extendsD. implements8、在 Java 中,以下哪个关键字用于实现多态?A. instanceofB. newC. thisD. super9、下列关于Java语言特性的描述中,哪项是不正确的?A. Java是一种面向对象的编程语言。
Java开发工程师招聘笔试题及解答(某大型央企)2024年
2024年招聘Java开发工程师笔试题及解答(某大型央企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、在Java中,以下哪个选项不是合法的数据类型?A. intB. floatC. charD. String2、以下哪个方法可以实现字符串的拼接?A. +B. +=C. StringBuilder.append()D. String.concat()3、以下哪个不是Java中定义的四种访问控制符?A、publicB、protectedC、privateD、internal4、在Java中,以下哪个类不是Java的根类?A、ObjectB、StringC、ThreadD、Math5、以下哪个不是Java中的基本数据类型?A. intB. floatC. StringD. boolean6、在Java中,以下哪个关键字用于定义一个不可变的字符串常量?A. finalB. staticC. constD. readonly7、在Java中,以下哪个关键字用于定义一个抽象类?A. classB. abstractC. interfaceD. final8、以下哪个Java集合类不允许有重复的元素?A. ArrayListB. LinkedListC. HashSetD. HashMap9、在Java中,以下哪个关键字用于声明一个类的成员变量为私有?A. publicB. protectedC. privateD. default 10、以下哪个方法可以在Java中用来创建一个对象?A. new()B. instantiate()C. create()D. object()二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些是Java中的基本数据类型?()A. intB. StringC. floatD. booleanE. List2、以下关于Java集合框架的说法正确的是?()A. HashMap和ArrayList都是线程安全的B. HashSet和LinkedList都是线程不安全的C. HashMap使用哈希表实现,ArrayList使用数组实现D. HashSet使用哈希表实现,LinkedList使用双向链表实现E. ArrayList可以动态扩容,LinkedList不能3、以下哪些技术是Java开发中常用的Web开发技术?()A、ServletB、JSPC、Spring MVCD、MyBatisE、HTML4、以下哪些是Java中用于异常处理的关键字?()A、tryB、catchC、finallyD、throwE、extends5、以下哪些技术栈是Java开发工程师在大型央企项目开发中常见的?()A. Spring FrameworkB. HibernateC. Spring BootD. MyBatisE. Apache CamelF. Java EE6、以下哪些是Java内存模型中定义的基本线程共享数据?()A. 基本数据类型B. 对象引用C. 常量D. 方法区数据E. 线程栈数据7、关于Java内存模型,以下说法正确的是:A. 线程之间共享主内存B. 每个线程都有自己的工作内存C. 主内存中的数据变化必须经过volatile关键字、synchronized关键字或final 关键字保证可见性D. volatile关键字可以保证原子性8、以下关于Java异常处理的说法,正确的是:A. try块中可以声明多个catch块,每个catch块可以捕获不同的异常类型B. finally块中的代码一定会被执行,无论try块中是否有异常发生C. 如果try块中发生异常,并且有一个相应的catch块处理该异常,那么程序将不会执行finally块D. 异常处理机制可以提高代码的健壮性和可维护性9、以下哪些技术或框架是Java开发工程师在项目开发中常用的?()A. Spring FrameworkB. HibernateC. Struts 2D. JavaServer Faces (JSF)E. ServletsF. jQueryG. MavenH. Docker 10、以下关于Java内存管理的说法,正确的是:()A. JVM中的堆内存是用于存储对象实例的内存区域。
Java开发工程师笔试题(带答案).docx
6.在如下所示的类Test中,共有(D)个构造方法。
publicclassTest{
privateintx;
publicTest(){
x = 35;
}
publicvoidTest(doublef){
.
.
this
. x
= (
int
)f;
}
public
Test(
C.main
D.run
E.不能确定
5.下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?( B )
A.
B.
实例变量指的是类中定义的变量,即类成员变量,如果没有初始化,会有默认值局部变量指的是在方法中定义的变量,如果没有初始化,会有默认值
C.类变量指的是用static修饰的属性
C.在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余
D.数据冗余通常是由于数据库设计引起的
20.在视图上使用INSERT语句,下列()情况可以进行插入操作(C)
A.视图中包含了使用统计函数的结果
B.视图由多个表连接而成,对多个表的列进行插入操作
C.视图全部包含了基本表中属性为
NOT NULL的列
5*6*7*8
public void drawNumPic(int n){
//代码区
}
二. 选择题(定项选择每题3分,不定项选择每题4分,共63分)
1.在基本JAVA类型中,如果不明确指定,整数型的默认是__类型,带小数的默认是__类型?( B )
A.int float
B.int double
C.long float
Java开发工程师招聘笔试题及解答(某大型国企)
招聘Java开发工程师笔试题及解答(某大型国企)一、单项选择题(本大题有10小题,每小题2分,共20分)1、下列哪个不是Java语言的关键字?A. sizeofB. abstractC. superD. interface答案:A. sizeof解析:在Java中,并没有sizeof关键字,而是使用特定的方法如数组的length 属性或者特定类的方法来获取对象或者数据的大小。
其他选项均为Java中的关键字,分别用于声明抽象类或方法、访问父类对象以及声明接口。
2、关于Java异常处理机制,下面哪一个描述是正确的?A. try语句块中只能包含catch语句块不能包含finally语句块。
B. catch语句块可以单独使用,不需要与try语句块配合。
C. finally语句块总是会被执行,无论是否发生异常。
D. 如果try语句块中有return语句,则finally语句块中的return语句不会被执行。
答案:C. finally语句块总是会被执行,无论是否发生异常。
解析:Java异常处理机制中,finally块是用来确保无论是否抛出异常都会被执行的部分,它通常用来释放资源。
即使try语句块中有return语句,finally中的代码也会先于return执行,但它不会覆盖return的结果。
其他选项中,A选项错误在于try 语句块可以与finally一起使用;B选项错误在于catch必须与try一起使用;D选项描述不准确,因为finally块中的代码会在return之前执行,但它不会改变return 的值,除非在finally中修改了返回值。
3、以下哪个关键字在Java中用于声明类?A. classB. objectC. newD. instance答案:A解析:在Java中,关键字class用于声明一个类。
object、new和instance都不是用于声明类的关键字。
object是Java中所有类的根类,new是用于创建对象实例的运算符,而instance通常用来检查一个对象是否为某个类的实例。
Java开发工程师招聘笔试题及解答(某大型集团公司)2025年
2025年招聘Java开发工程师笔试题及解答(某大型集团公司)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪种Java中的集合类是线程安全的?A、ArrayListB、LinkedListC、VectorD、HashSet2、在Java中,以下哪个关键字用来声明一个抽象类?A、interfaceB、extendsC、abstractD、class3、以下哪个Java关键字用于实现接口中的方法?A. implementsB. extendsC. abstractD. @Override4、关于Java中的垃圾回收机制,以下哪个说法是正确的?A. 程序员必须手动调用垃圾回收器来释放内存B. Java程序永远不会出现内存泄漏C. 垃圾回收器保证立即回收不再使用的对象D. Java使用垃圾回收机制自动管理内存5、下列哪个关键字用于在Java中创建新的类实例?A、newB、createC、makeD、instantiate6、关于Java中的异常处理,下面哪个陈述是正确的?A、try块后必须跟随catch块。
B、try块可以没有catch块而直接跟finally块。
C、一个try块可以跟随多个catch块。
D、只有当throw关键字被使用时,才需要使用异常处理。
7、以下哪个集合类在Java中是不可变的?A、ArrayListB、LinkedListC、HashSetD、Vector8、以下哪个关键字用于定义接口中的默认方法?A、abstractB、defaultC、nativeD、static9、在Java中,以下哪个关键字用于实现多线程?A. implementB. extendsC. threadD. implements 10、下列哪个选项是关于Java垃圾回收机制(GC)的正确描述?A. 程序员需要手动调用垃圾回收器来释放内存B. 垃圾回收器只会在程序运行结束时回收内存C. 垃圾回收器会定期自动检查并释放不再使用的内存D. Java语言没有垃圾回收机制,需要程序员自己管理内存二、多项选择题(本大题有10小题,每小题4分,共40分)1、下列关于Java语言的特点描述正确的是:A. Java支持指针操作B. Java具有自动垃圾回收功能C. Java可以编写跨平台的应用程序D. Java支持多线程编程2、关于Java集合框架的描述,下列说法正确的是:A. List接口继承自Collection接口,它是一个有序的集合,允许重复元素B. Set接口继承自Collection接口,它是一个不允许重复元素的集合C. Map接口继承自Collection接口,它是一个存储键值对映射的集合D. Collection接口是所有集合类的根接口,它定义了集合的基本操作方法3、以下哪些是Java中常见的异常处理机制?()A、try-catchB、throwC、finallyD、try-finally4、以下关于Java中泛型说法正确的是?()A、泛型可以提高代码的复用性B、泛型可以保证类型安全C、泛型参数可以用于方法定义和类定义D、泛型参数在运行时会被擦除5、以下关于Java内存模型的说法,哪些是正确的?A、Java内存模型规定了变量如何从一个线程的内存传输到另一个线程的内存B、Java内存模型规定了所有的变量都存储在主内存中C、Java内存模型规定了工作内存是线程私有的,存储了该线程使用的变量的副本D、Java内存模型中的原子性操作只能通过synchronized和Lock实现6、以下关于Java集合框架的说法,哪些是正确的?A、List接口是有序的集合,允许有重复的元素B、Set接口是无序的集合,不允许有重复的元素C、Map接口存储的是键值对,键不允许重复,值允许重复D、所有的集合类都继承自Collection接口7、关于Java中的异常处理机制,下列说法正确的是:A. try语句块中可以不包含catch语句块而单独使用finally语句块。
精选最新JAVA笔试面试完整题库588题(含标准答案)
2020年JAVA笔试面试题库588题一、简答题1.容器Panel和applet缺省使用的布局编辑策略是答案:FlowLayout的布局管理器2.释放SessionBean使用的某些资源或者刷新Entity Bean的缓存的代码一般实现在哪个方法中?A. ejbLoadB. ejbPassivateC. ejbStoreD. ejbRemoveE. ejbActivate答案:B3.对于大多数J2EE Constainer来说,web应用最终可以用哪种形式部署?A. jarB. earC. warD. 直接以目录形式答案:BCD4."MyObject哪个方法会影响到这段代码的正确性以及效率?Set set = new java.util.HashSet();set.add( new MyObject(A”));if ( set.contains( new MyObject(A”))) {……}A. hashCodeB. toStringC. cloneD. equals答案:5."下面代码中队result描述正确的是?InputStream in = … ;byte[] buff = new byte[1024];int result = in.read(buff, 0, 256)A. result 可能等于256B. result 可能等于0C. result 可能等于1024D. result 可能等于1答案:AB6.1. 保证在java应用程序中,一个类Class只有一个实例存在该使用什么设计模式答案:单例7.算法的时间复杂度是指:答案:时间复杂度是度量算法执行的时间长短。
随着模块n的增大,算法执行的时间的增长率和f(n)的增长率成正比,所以f(n)越小,算法的时间复杂度越低,算法的效率越高。
8.关于readLine() 方法,一下说法正确的是?A. 该方法抛出IOException异常,调用该方法应该try …catch…B. 如果读到文件的末尾,该方法返回的结果为nullC. readLine()每次读取一行数据D. BufferReader类的对象可以调用该方法答案:ABCD9.在Weblogic中如果部署的应用访问两个数据库并需要进行事务控制时,则需配置答案:两阶段提交协议10.在java中判断applet的来源的方法有?A. getCodeBase();B. getDocumentBase();C. getCodebase();D. getDocumentbase();答案:AB11.转发HTTP请求的两个方法 respsonse.sendDirect 和 RequestDispatcher.forward 的区别答案:RequestDispatcher.forward()方法和HttpServletResponse.sendRedirect()方法的区别是:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。
3中科金财JAVA开发工程师笔试题(带答案)
19. 有关数据冗余说法错误的是(C) A. 数据库中,数据存在副本的现象,就是数据冗余
17. 数据库有一个试卷表,希望找出试卷平均得分小于 90 的所有试卷( B ) A. SELECT * FROM paper WHERE sum(score) < 90; B. SELECT * FROM paper WHERE avg(score) < 90; C. SELECT * FROM paper WHERE max(score) < 90; D. SELECT * FROM paper WHERE mid(score) < 90;
10. (不定项选择)Java 多线程有几种实现方法?( AB ) A. 继承 Thread 类 B. 实现 Runnable 接口 C. 实现 Thread 接口 D. 以上都不正确
11. (不定项选择)下面有关 java threadlocal 说法正确的有?(ABCD) A. ThreadLocal 存放的值是线程封闭,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传
14. 下面关于 CSS 布局的描述,不正确的是?(D) A. 块级元素实际占用的宽度与它的 width 属性有关; B. 块级元素实际占用的宽度与它的 border 属性有关; C. 块级元素实际占用的宽度与它的 padding 属性有关; D. 块级元素实际占用的宽度与它的 background 属性有关。
public Bclass(){ System.out.println("B class");
精选最新JAVA笔试面试考核题库完整版588题(含答案)
C. (n-n/100*100)/10
D. n/10%10
答案:CD
19."下面哪一项运行结果为true?
int i = 9;
int j = 9;
A. ++j == i;
B. j == i ++;
C. j == ++ i;
D. j == i;
E. j++ == i;
答案:BDE
20."下面语句输出的结果是什么?
F. char c=a[0];
答案:DF
10.将两个表连接在一起时,下面那一项通常是另外一个表的主键A.外键
B.总控键
C.重复的组
D.主键
答案:A
11."类A定义如下:
class A {
private int x=10;
int getX() {
return x;
}
}
class B extends A {
int score = 9;
switch (score){
case 0:System.out.println();
default: System.out.println(""Error"");
case 3: System.out.println(""Good"");break;
case 2: System.out.println(""Best"");
B.子类能继承父类的protected方法,而不继承protected状态
C.子类能继承父类的所有非私有方法和状态
java笔试题及答案.doc
java笔试题及答案有了下面java笔试题及答案,进行java笔试时就容易多了,请您对下文进行参考:1、作用域public,private,protected,以及不写时的区别答:区别如下:作用域当前类同一package子孙类其他package public 7 7 7 7 protected 7 7 7 X friendly 7 7 X X private 7 X X X 不写时默认为friendly2、Anonymouslnner Class (匿名内部类)是否可以exte nd s (继承)其它类,是否可以imple ment s (实现)i nterf ace (接口)答:匿名的内部类是没有名字的内部类。
不能exte n ds (继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现3、Sta ti cNestedC las s 和Inner Clas s 的不同答:Nes tedC lass (一般是C+ +的说法),In nerClass (—般是JAVA的说法)。
J ava内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。
注:静态内部类(Inn erClass)意味着1创建一个st atic内部类的对象,不需要一个外部类对象,2不能从一个st atic内部类的一个对象访问一个外部类对象4、和的区别答:是位运算符,表示按位与运算,是逻辑运算符,表示遷辑与(and )5、Coll ect ion 和Col lect ions 的区别答:Coll ect ion是集合类的上级接口,继承与他的接口主要有Set和List.Col lections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作6、什么时候用assert答:asserti on (断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。
在实现中,a ssertion 就是在程序中的一条语句,它对一个boolea n表达式进行检查,一个正确程序必须保证这个bool ean表达式的值为tr ue;如果该值为fal se,说明程序己经处于不正确的状态下,系统将给出警告或退出。
Java软件开发工程师笔试题及答案
Java软件开发工程师笔试题及答案考试时间:120分钟姓名:___________ 成绩:___________一、选择题(共40题,每题2分)1.下列表达式正确的( )A、byte b = 128;B、boolean flag = null;C、float f = 0.9239;D、long a = 2147483648L;2.下列运算符合法的是( )A、&&B、<>C、ifD、:=、3.如下哪个不是java的关键字( )A、constB、NULLC、ifD、this4.提供Java存取数据库能力的包是( )A、java.sqlB、java.awtC、ngD、java.swing5.下列哪一种叙述是正确的( )A、abstract修饰符可修饰字段、方法和类B、抽象方法的body部分必须用一对大括号{ }包住C、声明抽象方法,大括号可有可无D、声明抽象方法不可写出大括号6.关于源文件,下列说法错误的是( )A、一个源文件里可以有多个class声明B、一个源文件里只能有一个class用public修饰C、源文件的名称只要和源文件里任意一个类名相同即可D、在开发的时候,如果两个类不存在嵌套关系,最好是一个源文件只有一个类7.已知表达式int m [ ] = {0,1,2,3,4,5,6};下面哪个表达式的值与数组下标量总数相等( )A、m.length()B、m.lengthC、m.length()+1D、m.length-18.下列程序的输出结果是()String str = null;System.out.println(a+2);A、2B、”2”C、”null2”D、” null+2”9.下列程序的输出结果是()int a = 012;int b = a < < 1;System.out.println(b);A、20B、24C、falseD、2110.下列程序的输出结果是()int a = 0x12;int b = a < < 1;System.out.println(b);A、36B、24C、falseD、2111.下列程序的输出结果是()int a = 23;int b = 5;System.out.println(a % b);A、4B、3C、4.6D、012.下列程序的输出结果是()double a = 23.0;double b = 5.0;System.out.println(a % b);A、4B、3C、4.0D、3.013.下列程序的输出结果是()int i = 2;i = i ++;int j = i ++;System.out.println(i+”, ”+j);A、2, 1B、2, 2C、2, 3D、3, 214.关于线程设计,下列描述正确的是()A、线程对象必须实现Runnable接口;B、启动一个线程直接调用线程对象的run()方法;C、Java提供对多线程同步提供语言级的支持;D、一个线程可以包含多个进程;15.欲构造ArrayList类得一个实例,此类继承了List接口,下列哪个方法是正确的()A、ArrayList myList = new Object();B、List myList = new ArrayList();C、ArraylList myList = new List();D、List myList = new List();16.下哪一个类型不能作为switch语句表达式的类型()A、intB、charC、StringD、short17.下面哪行代码有编译问题()public class Test{public void Test(){ //①}public Test(String str){ //②System.out.println(str);}public static void main(String[] args){Test t1 = new Test(); //③Test t2 = new Test(“hello”); //④}}A、①B、②C、③D、④18.关于Map和List,下面说法正确的是()A、Map继承ListB、List中可以保存Map或ListC、Map和List只能保存从数据库中取出的数据D、Map的value可以是List或Map19.下列描述正确的是()A、数组是一种对象B、数组属于一种原生类C、int number=[]={31,23,33,43,35,63}D、数组的大小可以任意改变20.关于package,下列说法不正确的是()A、package的作用是可以对类进行分类管理B、package提供了包一级的封装C、package语句不必是类的第一条非注释代码D、package声明的包可以有子包,但两个子包的名称不能相同21.关于权限修饰符,下列说法错误的是()A、权限修饰符可以用来修饰类和类的成员B、public权限最大,可以跨包访问C、protected权限允许在同一个包访问D、类不能用private修饰22.下列哪种说法是正确的()A、实例方法可直接调用超类的实例方法B、实例方法可直接调用超类的类方法C、实例方法可直接调用其他类的实例方法D、实例方法可直接调用本类的类方法23.阅读下面的程序public class X extends Thread implements Runnable{public void run(){System.out.println("this is run()");}public static void main(String args[]){Thread t=new Thread(new X());t.start();}}正确的判断是()A、第一行会产生编译错误B、第六行会产生编译错误C、第六行会产生运行错误D、程序会运行和启动24.阅读下面的程序public class A{private int value;public A(int value){setValue(value);}public setValue(int value){this.value = value;}}public class Test{public static void main(String[] args){int i = 1;A a = new A(1);modify (i);modify (a);}public static void modify(int i){i = 10;}public static void modify (A a){a.setValue(10);}}关于main方法的执行,正确的判断是()A、i的值改变了,a的成员变量的值改变了B、i的值改变了,a的成员变量的值没有改变C、i的值没有改变,a的成员变量的值改变了D、i的值没有改变,a的成员变量的值没有改变25.关于eqauls方法,下列说法错误的是()A、用==判断两个对象相等B、用对象的eqauls方法判断两个对象相等C、根类Object的eqauls方法的实现机制是判断参数指向的对象和自身是否为同一个对象D、如果我们要判断对象相等,通常需要覆盖eqauls方法26.下面哪行代码有编译问题()public class Test{public static void main(String[] args){int[] a = {}; //①String[] str = {}; //②a = new int[]{}; //③str = {”1”,”2”}; //④}}A、①B、②C、③D、④27.下面哪种定义一个二维数组的方式是错误的()A、int[][] a = new int[5][];B、int[][] a = new int[][5];C、int[][] a = {};D、int[][] a = {{}};28.String s=new String(“hello”);String t =new String(“hello”);char c [ ] ={‘h’,’e’,’l’,’l’,’o’};下列哪些表达式返回true()(多选)A、s.equals(t);B、t.equals(c);C、s= =tD、t.equals (new String(“hello”));29.阅读下面代码:String str1 = “abc”;String str2 = new String(“abc”);boolean b1 = str1 == str2;boolean b2 = str1.eqauls(str2);判断正确的是()A、b1的值为true,b2的值为trueB、b1的值为false,b2的值为trueC、b1的值为true,b2的值为falseD、b1的值为false,b2的值为false30.对于下列代码:public class Parent {public int addValue (int a ,int b ){int s;s = a + b;return s;}}class Child extends Parent {}下述哪个方法可以加入类Child()A、int addValue(int a ,int b){//do something…}B、public void addValue(){//do something…}C、public int addV alue(){//do something…}D、public int addValue( int a, int b )throws MyException {//do some thing…}31.关于异常(Exception),下列说法错误的是()A、异常的基类为Exception,所有异常都必须直接或者间接继承它B、异常可以用try{ . . .}catch(Exception e){ . . .}来捕获并进行处理C、如果某异常继承RuntimeException,则该异常可以不被声明D、异常可以随便处理,而不是抛给外层的程序进行处理32.下列关于栈的叙述正确的是()A、栈是非线性结构B、栈是一种树状结构C、栈具有先进先出的特征D、栈具有后进先出的特征33.有关线程的哪个叙述是错误的()A、一旦一个线程被创建,它就立即开始运行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
J a v a开发工程师笔试试题(请不要在试题上留任何痕迹,所有答案均写在答题纸上)一.编程题(共26分)1.任意写出一种排序算法。
(6分)public void sort(int [] array){//代码区}2.求1+2+3+..n(不能使用乘除法、for 、while 、if 、else 、switch 、case 等关键字以及条件判断语句)(8分)public int sum(int n){//代码区return 0;}3.完成下面方法,输入一个整数,输出如下指定样式图案。
(12分)输入:3,输出:1*2*37*8*94*5*6输入:4输出:1*2*3*49*10*11*1213*14*15*165*6*7*8public void drawNumPic(int n){//代码区}二.选择题(定项选择每题3分,不定项选择每题4分,共63分)1.在基本JAVA类型中,如果不明确指定,整数型的默认是__类型,带小数的默认是__类型?( B )A.int floatB.int doubleC.long floatD.long double2.只有实现了__接口的类,其对象才能序列化( A )A.SerializableB.CloneableparableD.Writeable3.代码System. out. println(10 % 3 * 2);将打印出?( B )A. 1B.2C.4D.64.以下程序运行的结果为( A )public class Example extends Thread{@Overridepublic void run(){try{Thread.sleep(1000);}catch (InterruptedException e){e.printStackTrace();}System.out.print("run");}public static void main(String[] args){Example example=new Example();example.run();System.out.print("main");}}A.run mainB.main runC.mainD.runE.不能确定5.下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?( B )A.实例变量指的是类中定义的变量,即类成员变量,如果没有初始化,会有默认值B.局部变量指的是在方法中定义的变量,如果没有初始化,会有默认值C.类变量指的是用static修饰的属性D.final变量指的是用final 修饰的变量6.在如下所示的类Test中,共有(D)个构造方法。
public class Test{private int x;public Test(){x = 35;}public void Test(double f){this.x = (int)f;}public Test(double f){this.x = (int)f;}public Test(String s) {}}A.0B.1C.2D.37.下列选项中关于Java中super关键字的说法正确的是(A)A.super关键字是在子类对象内部指代其父类对象的引用B.super关键字不仅可以指代子类的直接父类,还可以指代父类的父类C.子类通过super关键字只能调用父类的方法,而不能调用父类的属性D.子类通过super关键字只能调用父类的属性,而不能调用父类的方法8. Java数据库连接库JDBC用到哪种设计模式?(B )A.单例模式B.桥接模式C.抽象工厂D.装饰模式E.责任链模式9.(不定项选择)以下关于JAVA语言异常处理描述正确的有?(CD)A.throw关键字可以在方法上声明该方法要抛出的异常。
B.throws用于抛出异常对象。
C.try是用于检测被包住的语句块是否出现异常,如果有异常,则抛出异常,并执行catch语句。
D.finally语句块是不管有没有出现异常都要执行的内容。
E.在try块中不可以抛出异常10.(不定项选择)Java多线程有几种实现方法?(AB )A.继承Thread类B.实现Runnable接口C.实现Thread接口D.以上都不正确11.(不定项选择)下面有关java threadlocal说法正确的有?(ABCD)A.ThreadLocal存放的值是线程封闭,线程间互斥的,主要用于线程内共享一些数据,避免通过参数来传递B.线程的角度看,每个线程都保持一个对其线程局部变量副本的隐式引用,只要线程是活动的并且ThreadLocal 实例是可访问的;在线程消失之后,其线程局部实例的所有副本都会被垃圾回收C.在Thread类中有一个Map,用于存储每一个线程的变量的副本D.对于多线程资源共享的问题,同步机制采用了“以时间换空间”的方式,而ThreadLocal采用了“以空间换时间”的方式12.放在HTML里的哪一部分JavaScripts会在页面加载的时候被执行?(D)A.文件头部位置B.文件尾C.<head>标签部分D.<body>标签部分13.要在10秒后调用checkState,下列哪个是正确的(B)A.window.setTimeout(checkState, 10);B.window.setTimeout(checkState, 10000);C.window.setTimeout(checkState(), 10);D.window.setTimeout(checkState(), 10000);14.下面关于CSS布局的描述,不正确的是?(D)A.块级元素实际占用的宽度与它的width 属性有关;B.块级元素实际占用的宽度与它的border 属性有关;C.块级元素实际占用的宽度与它的padding 属性有关;D.块级元素实际占用的宽度与它的background 属性有关。
15.下面有关javascript常见事件的触发情况,描述错误的是?(C)A.onmousedown:某个鼠标按键被按下B.onkeypress:某个键盘的键被按下或按住C.onblur:元素获得焦点D.onchange:用户改变域的内容16. head标签中必不少的是(C)A.<meta>B.<link>C.<title>D.<script>17.数据库有一个试卷表,希望找出试卷平均得分小于90的所有试卷(B )A.SELECT * FROM paper WHERE sum(score) < 90;B.SELECT * FROM paper WHERE avg(score) < 90;C.SELECT * FROM paper WHERE max(score) < 90;D.SELECT * FROM paper WHERE mid(score) < 90;18.关于索引(index)的说法哪些是错误?(A)A.创建索引能提高数据插入的性能B.索引应该根据具体的检索需求来创建,在选择性好的列上创建索引C.索引并非越多越好D.建立索引可使检索操作更迅速19.有关数据冗余说法错误的是(C)A.数据库中,数据存在副本的现象,就是数据冗余B.通过分类存储,可以有效减少数据冗余,但是会增加数据查找的复杂性C.在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余D.数据冗余通常是由于数据库设计引起的20.在视图上使用INSERT语句,下列()情况可以进行插入操作(C)A.视图中包含了使用统计函数的结果B.视图由多个表连接而成,对多个表的列进行插入操作C.视图全部包含了基本表中属性为NOT NULL的列D.视图中使用了DICTINCT三.程序读写题(共11分)1.阅读下列程序,其输出为:_________0eeE__________(5分)public class ExceptionTest {private static void test(int[]arr) {for (int i = 0; i < arr.length; i++) {try {if (arr[i] % 2 != 0) {throw new NullPointerException();} else {System.out.print(i);}} finally {System.out.print("e");}}}public static void main(String[]args) {try {test(new int[] {0, 1, 2, 3, 4, 5});} catch (Exception e) {System.out.print("E");}}}2.阅读下列程序,其输出为:_________ __________(6分)public class Aclass {public Aclass(){System.out.println("A class");}public void doPrint(){System.out.println("printer in A class");}}public class Bclass extends Aclass{public Bclass(){System.out.println("B class");}public void doPrint(){System.out.println("printer in B class");}}public class Cclass extends Bclass{public Cclass(){System.out.println("C class");}public static void main(String[] args) {Aclass c = new Cclass();c.doPrint();}}输出为:A classB classC classprinter in B class四.简答题(共50分)1.String与StringBuffer有什么区别?(5分)简单地说,就是一个变量和常量的关系。
StringBuffer对象的内容可以修改;而String 对象一旦产生后就不可以被修改,重新赋值其实是两个对象。
StringBuffer的内部实现方式和String不同,StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类。