Java开发工程师笔试题(带答案)

合集下载

Java软件开发工程师笔试题(答案)

Java软件开发工程师笔试题(答案)

Java软件开发工程师笔试题(答案)Java工程师笔试题1,填空(此大题10项,每空1分,共20分)1。

Java语言的三个特性是继承性、封装性和多态性2.在Java中,char 使用_ _ _ _ Unicode _ _ _ _ _ _编码方案,因此中文字符和英文字符都占用__2__字节的内存空间3。

当方法由_ _定义时,形参指的是参数行,当方法由_ _调用时,实际参数是传入的变量或值。

4。

JSP内置对象,应用程序对象代表应用程序上下文,它允许JSP 页面与包含在同一应用程序中的任何网络组件共享信息,而会话对象是特定于每个客户的5。

如果你想把一个对象写到一个流中,这个类必须实现Seralizable 接口6。

在程序中实现多线程有两种方法:继承线程类和实现_ _ Runable _ interface7。

在多线程中,线程的相对优先级可以通过调用相应的setPriority()方法来修改8。

面向对象编程的五个设计原则是单一责任、开放和封闭、里氏尺度替换、依赖倒置、接口分离。

通过Ajax,客户端获取的数据主要有两种类型:文本类型和xml 10。

Socket通常也叫socket,用来描述__ ip和_ _ interface2,多项选择题(这个大题20项,每项2分,共40分)1。

在JA V A中,如果父类中的一些方法不包含任何逻辑并且需要被子类重写,那么父类的这些方法应该使用()关键字来声明:a)final b)static c)abstract d)void2。

在JA V A中,已经定义了两个接口b和c。

要定义实现这两个接口的类,下面的语句是正确的()a)接口aextend b,c b)接口a implements b,c c)类a mplements b,c d)类a mplements b,实现c3。

可以在JA V A接口()中定义A)静态方法b)常量c)构造函数d)抽象方法4。

假设A有构造函数A (int a),那么在A类的其他构造函数中调用的构造函数和语句格式应该是()a)a(x)b)this . a(x)c)this(x)d)super(x)5。

正式应聘的JAVA笔试题和答案

正式应聘的JAVA笔试题和答案

正式应聘的JAVA笔试题和答案一:选择题1:List, Set, Map是否继承自Collection接口A:都是,B 都不是 C:List, Set 是 D:Set, Map 是正确答案 C2:下面描述哪个是正确的A:构造器Constructor可被overrideB:可以继承String类C:try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code不会被执行D:两个对象值相同(x.equals(y) == true),那么也有相同的hash code正确答案 D3 abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized A:都能 B:都不能 C:可以为static D:可以为native正确答案 A4:下面的程序中,temp的最终值是什么?long temo=(int)3.9;temp%=2;A: 0 B :1 C :2 D : 3正确答案 B5、请在以下选项中选出非基本数据类型的选项 ( )A: int B:byte C: boolean D:String正确答案 D6、阅读下面代码段, 给出以下代码的输出结果public class Test{public static void main(String args[]){String str1 = "abc";String str = "abc;String str2 = new String("abc");System.out.println(str1 == str2);System.out.println(str1.equals(str2));System.out.println(str == str1);}}A:true,true,true B:true,false,true C:true,true,false D:false,true,true正确答案 D7、阅读下面代码段, 给出以下代码的输出结果:int i=1;switch (i) {case 0:System.out.println("zero");break;case 1:System.out.println("one");case 2:System.out.println("two");default:System.out.println("default");}A: B::D:default 正确答案 C8、阅读下面代码段, 给出以下代码的输出结果public class MyClass{static int i;public static void main(String argv[]){System.out.println(i);}}A: Error Variable i may not have been initialized B:null C:D:0 正确答案 D9、阅读下面代码段, 给出以下代码的输出结果:class A{static{System.out.print( “A1”);}public A(){System.out.print( “A2”);}}class B extends A{static{System.out.print( “B1”);}public B(){System.out.print( “B2”);}}public class Hello{public static void main(String[] args){A ab = new B();ab = new B();}}A:A1B1A2B2B1B2 B:A1B1A2B2A2B2 C:A1B1A2B2B1B2 D:A1A2B1B2A2B2正确答案 B10、阅读下面代码段, 给出以下代码的输出结果public class TestData {public String getValue () {String value = "";try{value = "test1";return value;}catch(Exception e){e.printStackTrace();}finally{value = "test2";}return value;}public static void main(String args[]){ TestData test = new TestData();String a = test.getValue();System.out.println(a);}}A.test1B.test2C.nullD.””正确答案 A二、改错题,如果有错误,请指出并修正。

Java软件开发工程师笔试题及答案

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、一旦一个线程被创建,它就立即开始运行。

Java开发工程师招聘笔试题及解答2024年

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.下列哪一种叙述是正确的(D)A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住没有body部分C.声明抽象方法,大括号可有可无不存在bodyD.声明抽象方法不可写出大括号2.如下代码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);}}输出结果是什么?DA. 0B. 1C. 2D.编译失败3.下列哪种说法是正确的(D)A.实例方法可直接调用超类的实例方法如果超类没有被重写就可以B.实例方法可直接调用超类的类方法有可能是私有方法不可以调用C.实例方法可直接调用其他类的实例方法不可以D.实例方法可直接调用本类的类方法4.在Servlet处理请求的方式为:CA.以进程的方式B.以程序的方式C.以线程的方式Servlet容器默认是采用单实例多线程的方式处理多个请求的:D.以响应的方式5.JDBC中,用于表示数据库连接的对象是:BA.Statement连接的实例,执行sqlB.Connection建立与数据库的连接C.DriverManager该方法将建立与数据库的连接D.PreparedStatement6.用于调用存储过程的对象是:CA.ResultSet返回结果集B.DriverManagerC.CallableStatemetD.PreparedStatement PreparedStatement代替Statement.7.按照MVC设计模式,JSP用于实现:BA.ModelB.ViewC.ControllerD.容器8.如下代码10. public Object m() {11. Object o = new Float(3.14F);12. Object [] oa = new Object[1];13. oa[0] = o;14. o = null;15. oa[0] = null;16. print 'return 0';17. }当Float对象在第11行被创建后, 什么时候能够被垃圾回收?CA. 13行以后.B. 14行以后.C. 15行以后.D. 16行以后.9.如下代码:class Base {Base() { System.out.print("Base"); }}public class Alpha extends Base {public static void main( String[] args ) {new Alpha(); -----调用父类无参的构造方法new Base();}}结果是什么?BA. BaseB. BaseBaseC. 编译失败.D. 代码运行但没有输出.E. 运行时抛出异常10.在J2EE中属于Web层的组件有:AA.ServletB.EJBC.AppletD.HTML11.在Servlet的生命周期中,容器只调用一次的方法是:CA.serviceB.getServletConfigC.initD.destroy12.以下关于异常的说法正确的是:DA. 一旦出现异常,程序运行就终止了非系统异常仍然可以继续运行B. 如果一个方法申明将抛出某个异常,它就必须真的抛出那个异常不一定C. 在catch子句中匹配异常是一种精确匹配exceptionD. 可能抛出系统异常的方法是不需要申明异常的13.如下代码:public class Foo {public static void main(String[] args) {try {return;} finally {System.out.println( "Finally" );}}}输出结果是什么?AA. FinallyB.编译失败C. 代码正常运行但没有任何输出.D. 运行时抛出异常14. jsp指令中isELIgnored="boolean"的意思是(C)A.决定是否实现Servler的单线程模式,B.决定改页面是否是一个错误处理页面,C.决定是否支持EL表示,D.没有具体的含义。

Java常见笔试题及答案

Java常见笔试题及答案

Java常见笔试题及答案一、单选择题(每小题2分,共10分)1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。

A. .javaB. .classC. .htmlD. .exe2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。

A. 3B. 3. 5C. 4D. 53、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。

A. start( )B. stop( )C. init( )D. paint( )4、不允许作为类及类成员的访问控制符的是( C )。

A. publicB. privateC. staticD. protected5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。

A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )二、填空题(每空格1分,共20分)1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码、和解释运行字节码。

2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是 Applet、类的子类并且存储该源程序文件的文件名为MyApplet。

13、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器javac.exe 编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 . class 的字节码文件。

4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2 字节内存空间,这样,无论是中文字符还是英文字符,都是占用2 字节内存空间。

中级Java软件开发工程师笔试题(附答案)

中级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笔试题大全带答案(经典11题)

java笔试题大全带答案(经典11题)

java笔试题大全带答案(经典11题)1.不通过构造函数也能创建对象吗()A. 是(推荐学习:java面试题大汇总)B. 否分析:答案:AJava创建对象的几种方式(重要):(1) 用new语句创建对象,这是最常见的创建对象的方法。

(2) 运用反射手段,调用ng.Class或者ng.reflect.Constructor类的newInstance()实例方法。

(3) 调用对象的clone()方法(4) 运用反序列化手段,调用java.io.ObjectInputStream对象的 readObject()方法。

(1)和(2)将显式调用构造函数;(3)它是内存中已有对象的副本,所以不会调用构造函数;(4)类的对象是从文件中恢复的,不会调用构造函数。

(1)和(2)将显式调用构造函数;(3)它是内存中已有对象的副本,所以不会调用构造函数;(4)类的对象是从文件中恢复的,不会调用构造函数。

2.下面哪些是对称加密算法()A. DESB. MD5C. DSAD. RSA分析:答案:A分析:常用的对称加密算法有:DES、3DES、RC2、RC4、AES 常用的非对称加密算法有:RSA、DSA、ECC使用单向散列函数的加密算法:MD5、SHA3.下面的代码段,当输入为2的时候返回值是()public static int get Value(int i){int result=0;switch(i){case 1:result=result +icase 2:result=result+i*2case 3:result=result+i*3}return result;}登录后复制A. 0B. 2C. 4D. 10答案:C分析:result = 0 + 2 * 2;4.以下Java代码段会产生几个对象public void test(){String a="a";String b="b";String c="c";c=a+""+b+""+c;System.out.print(c);}登录后复制分析:答案: 一个对象,因为编译期进行了优化,3个字符串常量直接折叠为一个5.Math.round(-11.2)的运行结果是。

Java开发工程师笔试题目

Java开发工程师笔试题目

Java开发工程师笔试题目1.下面程序的输出结果是:public class Foo {public static void main(String[] args) {Integer f1 = 100, f2 = 100, f3 = 150, f4 = 150;System.out.println(f1 == f2);System.out.println(f3 == f4);}} [单选题] *A.false trueB.true trueC.true false(正确答案)D.false false2.集合在遍历时,删除符合条件的元素,下面哪些说法是正确的: [单选题] *A.在 foreach 循环里进行元素的 remove操作。

B.使用Iterator方式,如果有并发,需要对Iterator对象加锁。

(正确答案)C.Iterator进行元素的删除操作,是线程安全的。

D.Java无法实现在遍历时,进行删除元素操作。

3.下面说法哪些是正确的:() *A.LinkedList继承自ListB.AbstractSet继承自SetC.HashSet继承自AbstractSet(正确答案)D.WeakMap继承自HashMap4.Java中实现多线程的方法有:() *A.继承Thread类(正确答案)B.实现Runnable接口(正确答案)C.使用Future实现有返回结果的多线程(正确答案)D.实现Callable接口(正确答案)5.关于线程池管理线程的好处,下列哪些说法是正确的:() *A.能够减少在创建和销毁线程上所花的时间以及系统资源的开销(正确答案)B.使用线程池一定能避免OOM问题C.线程资源必须通过线程池提供,不允许在应用中自行显式创建线程(正确答案)D.线程池能够根据资源等待情况,自动调整线程优先级并解决死锁问题6.关于线程安全,下列哪些说法是正确的:() *A.SimpleDateFormat 是线程不安全的类。

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笔试题带答案

JA V A笔试题带答案一.选择题1.下面关于Java语言说法错误的是:()A.java语言是完全面向对象的B。

java语言支持多继承C.java语言支持多线程D。

java语言最早是为消费电子产品领域设计的2.下面标识符中正确的是:()A.*123 B。

12java C.continue D。

java$next3.下列关于注释语句的描述中,正确的一项是()A。

以//开始的是多行注释语句B。

以结束的是单行注释语句C。

以结束的是可以用于生成帮助文档的注释语句D。

以结束的是单行注释语句4.为了区分重载多态中同名的不同方法,要求()。

A)形式参数个数或者类型不同B)返回值类型不同C)调用时用类名或对象名做前缀D)形式参数名称不同5.下面定义数组的格式中正确的是:()A.int a[10] B。

int a=new int[10] C.int []a=new int[5] D.int a[]6.下面说法中不正确的是:()A.类是对象的抽象,对象是类的实例B。

类是组成java程序的最小的单位C.java语言支持多继承D。

java一个程序中只能有一个public类7.定义类时,不可能用到的保留字是()。

A)private B)classC)extends D)implements8.为AB 类的定义一个公共的构造函数,该方法头的形式为()A.void AB( ) B。

public void method( )C.public method ( ) D。

public AB( )9.下面说法中不正确的是:()A.java中一个类只允许实现一个接口B。

抽象类中允许有非抽象方法的存在C.类变量(实例变量)可以直接用类名调用D。

通过super可以调用基类的构造函数10.容器JFrame 默认使用的布局编辑策略是()A.BorderLayout B。

FlowLayout C。

GridLayout D。

CardLayout11.以下哪个表达式是不合法的()A.String x=”Hello”; int y=9; x+=y;B.String x=”Hello”; int y=9; if(x= =y) { }C.String x=”Hello”; int y=9; x=x+y;D.String x=null; int y=(x!=null)&&(x.length()>0)12.class person{public int addvalue(int a,int b){int s;s=a+b;return s;}}class child extends parent{}若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue 方法头的描述哪个是正确的:A)int addvalue(int I,int j) B)void addvalue()C)void addvalue(double i) D)int addvalue(int a)13.下面程序在fun()方法当出现数组下标超过界限的情况下的输出结果是:()public void test(){try{fun();System.out.print(“情况1”);}catch(ArrayIndexOutOfBoundsException e){ System.out.print(“情况2”);}catch(Exception e){ System.out.print(“情况3”);}finally{ System.out.print(“finally”);}}A.情况1 B。

java笔试题大全带答案

java笔试题大全带答案

java笔试题大全带答案一、选择题1.下列哪个选项是JAVA语言中的基本数据类型?A. IntegerB. BooleanC. StringD. Double答案:B. Boolean2.以下关于JAVA程序的描述中,错误的是:A. JAVA源程序文件的扩展名为.javaB. JAVA虚拟机是JAVA程序的运行环境C. JAVA程序由一个或多个类组成D. JAVA程序的入口函数是main函数答案:C. JAVA程序由一个或多个类组成(应为:JAVA程序由一个类组成)3.以下哪种循环结构可以根据循环条件决定是否执行循环体?A. for循环B. do-while循环C. while循环D. switch循环答案:C. while循环4.以下关于JAVA的面向对象特性的描述中,正确的是:A. 封装是指将数据和操作数据的方法绑定在一起,形成一个类B. 多态是指同一个方法可以根据对象的不同,展现出不同的行为C. 继承是指一个类可以派生出多个子类D. 抽象是指一个类具有实例化对象的能力答案:B. 多态是指同一个方法可以根据对象的不同,展现出不同的行为二、填空题1.下列代码的输出结果是______。

```javaint a = 5;int b = 2;System.out.println(a / b);```答案:22.以下关于JAVA异常处理的语句中,正确的是______。

A. tryB. exceptC. catchD. throw答案:C. catch3.以下哪个关键字声明的方法可以被子类重写?A. finalB. staticC. abstractD. private答案:C. abstract4.以下哪个关键字可以在子类中调用父类的同名方法?A. thisB. superC. extendsD. implements答案:B. super三、编程题请编写一个JAVA程序,实现以下功能:1. 定义一个名为Rectangle的类,包含如下属性和方法:- 属性:宽度(width)、高度(height)- 方法:计算矩形面积(getArea)、计算矩形周长(getPerimeter)2. 在main函数中创建一个Rectangle对象,并计算其面积和周长并打印输出。

Java开发工程师招聘笔试题与参考答案(某大型央企)

Java开发工程师招聘笔试题与参考答案(某大型央企)

招聘Java开发工程师笔试题与参考答案(某大型央企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、在Java中,以下哪个关键字用于声明一个类的静态变量?A、publicB、privateC、staticD、final2、在Java中,以下哪个关键字用于声明一个方法为抽象方法?A、abstractB、nativeC、synchronizedD、transient3、在Java中,下列哪个关键字用于声明一个抽象类?A、finalB、staticC、abstractD、native4、以下哪个方法可以用来检查一个字符串是否以指定的后缀结束?A、String.endsWith(String suffix)B、String.startsWith(String prefix)C、String.indexOf(String str)D、stIndexOf(String str)5、以下哪个Java关键字是用来定义类的?A. newB. classC. objectD. this6、在Java中,以下哪个方法可以在子类中被重写(Override)?A. 静态方法B. 私有方法C. 构造方法D. 抽象方法7、以下哪个不是Java中的基本数据类型?A、intB、StringC、floatD、boolean8、关于Java中的异常处理,以下说法正确的是:A、try块中可以没有catch或finally块B、finally块中可以抛出新的异常C、try块中可以抛出异常,但finally块中不能抛出异常D、try块中抛出的异常必须在catch块中处理,或者在finally块中处理9、在Java中,以下哪个类是用于处理日期和时间的?A. CalendarB. DateC. TimeD. DateTime 10、以下哪个关键字用于声明一个无参构造函数?A. newB. thisC. constructorD. super二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些是Java中的基本数据类型?A、intB、StringC、floatD、booleanE、char2、以下哪些操作是Java中的异常处理机制?A、try-catchB、finallyD、throwsE、instanceof3、以下哪些是Java中用于异常处理的机制?()A. try-catchB. finallyC. throwsD. throwE. extends4、下列关于Java集合框架的说法,正确的是?()A. List接口是集合框架中的一部分,它允许存储重复的元素。

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工程师笔试题及答案

java工程师笔试题及答案# Java工程师笔试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是Java语言的特点?- A. 面向过程- B. 面向对象- C. 编译型语言- D. 解释型语言答案:B2. Java中,哪个关键字用于定义类?- A. `class`- B. `interface`- C. `enum`- D. `package`答案:A3. 在Java中,哪个方法用于获取类的完整路径名?- A. `getClass()`- B. `getClassName()`- C. `getName()`- D. `getPackage()`答案:A4. 以下哪个是Java集合框架中的接口?- A. `ArrayList`- B. `LinkedList`- C. `HashSet`- D. `Collection`答案:D5. Java中的异常分为哪两大类?- A. 编译时异常和运行时异常- B. 检查型异常和非检查型异常- C. 系统异常和应用异常- D. 可捕获异常和不可捕获异常答案:B二、简答题(每题5分,共20分)1. 请简述Java的垃圾回收机制。

答案:- Java的垃圾回收机制是自动内存管理的一部分,它负责回收不再使用的对象所占用的内存。

- 垃圾回收器定期检查堆内存,找出那些不再被任何引用指向的对象,然后将这些对象占用的内存释放。

2. 什么是Java的多线程,以及它的重要性是什么?答案:- Java的多线程是指在同一个Java虚拟机中同时运行多个线程的能力。

- 多线程可以提高程序的响应性和效率,允许同时执行多个任务,特别是在多核处理器上。

3. 请简述Java中的接口和抽象类的区别。

- 答案:- 接口定义了一组方法规范,但不能包含实现,所有方法默认为public abstract。

- 抽象类可以包含方法的实现,并且可以有非抽象方法。

4. 请解释Java中的泛型是什么,并给出一个简单的例子。

Java开发工程师试卷及答案解析

Java开发工程师试卷及答案解析

Java开发工程师试卷及答案解析Java开发工程师试卷及答案解析一、单选题 (共19道题,每题5分)1.下面有关java的一些细节问题,描述错误的是?A.构造方法不需要同步化B.一个子类不可以覆盖掉父类的同步方法C.定义在接口中的方法默认是public的D.容器保存的是对象的引用2.在Java中,以下关于方法重载和方法重写描述正确的是()A.方法重载和方法的重写实现的功能相同B.方法重载出现在父子关系中,方法重写是在同一类中C.方法重载的返回值类型必须一致,参数项必须不同D.方法重写的返回值类型必须相同或相容。

(或是其子类)3.在JAVA中,下面关于String类和StringBuffer类的描述正确的是那一个?A.StringBuffer类的对象调用toString()方法将转换为String类型B.两个类都有append()方法C.可以直接将字符串“test”赋值给声明的Stirng类和StringBuffer类的变量D.两个类的实例的值都能够被改变4.下面有关List接口、Set接口和Map接口的描述,错误的是?A.他们都继承自Collection接口B.List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置C.Set是一种不包含重复的元素的CollectionD.Map提供key到value的.映射。

一个Map中不能包含相同的key,每个key只能映射一个value5.下面有关spring的依赖注入,说法错误的是?A.依赖注入通常有如下两种:设值注入和构造注入:B.构造注入可以在构造器中决定依赖关系的注入顺序,优先依赖的优先注入C.当设值注入与构造注入同时存在时,先执行构造注入,再执行设值注入D.设值注入是指IoC容器使用属性的setter方法来注入被依赖的实例。

这种注入方式比较简单、直观6.下面不属于HttpServletRequest接口完成功能的是?A.读取cookieB.读取HTTP头C.设定响应的content类型D.读取路径信息7.从以下哪一个选项中可以获得Servlet的初始化参数?A.ServletB.ServletContextC.ServletConfigD.GenericServlet8.下列关于java抽象类的说法哪个正确?A.某个抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法B.接口和抽象类是同一回事C.可以用抽象类直接去实例化创建对象D.一个类只能继承一个抽象类9.下面关于spring和struts2的描述,错误的是?A.spring mvc的入口是filter,而struts2是servletB.spring mvc是基于方法的设计,而struts2是基于类的设计C.struts2有以自己的interceptor机制,spring mvc用的是独立的AOP方式D.spring mvc的方法之间基本上独立的,独享request response 数据,struts2所有Action变量是共享的10.关于JAVA的垃圾回收机制,下面哪些结论是正确?A.程序可以任意指定释放内存的时间B.JAVA程序不能依赖于垃圾回收的时间或者顺序C.程序可明确地标识某个局部变量的引用不再被使用D.程序可以显式地立即释放对象占有的内存11.一般用()创建InputStream对象,表示从标准输入中获取数据,用()创建OutputStream对象,表示输出到标准输出设备中。

Java开发工程师招聘笔试题及解答(某大型央企)2024年

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软件开发工程师笔试题(标准答案)

Java软件开发工程师笔试题(标准答案)

Java工程师笔试题一、填空题(本大题10小题,每空1分,共20分)。

1.Java语言的三大特性即是: 继承、封装、多态。

2.在Java中,char 型采用____unicode_______编码方案,这样,无论是中文字符还是英文字符,都是占用__2___个字节的内存空间。

3. 形式参数指的是方法被__定义____ 时的参数行,实际参数是方法被__调用__ _ 时所传递进去的变量或值。

4.JSP对象则是每个客户专用的。

接口。

6.程序中实现多线程的方法有两种:继承Thread类和实现___Runable _ 接口。

对优先级。

8.面向对象编程的五大设计原则,分别是单一职责、开放封闭、里氏替换、依赖倒置、接口分离9.通过Ajax,客户端获取的数据主要有两种类型:文本型和xml10.Socket通常也称为套接字,用于描述__ ip 和_ _接口二、选择题(本大题20 小题,每小题2分.共40分)。

1.在JA V A中,如果父类中某些方法不包含任何逻辑,并且需要由子类重写.应该使用( )关键字来声明父类的这些方法:A) final B) static C) abstract D) void2.在JA V A中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是()。

A) interface A extend B,C B) interface A implements B,CC) class A implements B,C D) class A implements B, implements C3.在JA V A接口中可以定义( )。

A) 静态方法B) 常量C) 构造方法D) 抽象方法4.假设A有构造方法A (int a),则在类A的其他构造方法中调用该构造方法和语句格式应为()。

A) A(X) B) this.A(x) C) this(x) D) super(x)5.设x = 1 ,y = 2 , z = 3, 则表达式y+=z--/++x 的值是( )。

Java开发工程师招聘笔试题及解答(某大型国企)

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软件开发工程师笔试题及答案

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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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)个构造方法。

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类。

相关文档
最新文档