java笔试题试题及答案

合集下载

JAVA笔试题--基础很全有答案

JAVA笔试题--基础很全有答案

第一组1.下列不可作为java语言修饰符的是(D)A) a1 B) $1 C) _1 D) 112.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A)A) a1.java B) a1.class C) a1 D) 都对3.整型数据类型中,需要内存空间最少的是(D)A) short B) long C) int D) byte4. Java 类可以作为(C)A) 类型定义机制B) 数据封装机制C) 类型定义机制和数据封装机制D) 上述都不对5.在创建对象时必须(C)A) 先声明对象,然后才能使用对象B) 先声明对象,为对象分配内存空间,然后才能使用对象C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象D) 上述说法都对6.在调用方法时,若要使方法改变实参的值,可以(B)A) 用基本数据类型作为参数B) 用对象作为参数C) A和B都对D) A和B都不对7. Java中(C)A) 一个子类可以有多个父类,一个父类也可以有多个子类B) 一个子类可以有多个父类,但一个父类只可以有一个子类C) 一个子类可以有一个父类,但一个父类可以有多个子类D) 上述说法都不对8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B)A) 安全性B) 多线性C) 跨平台D) 可移植9. Character流与Byte流的区别是(C)A) 每次读入的字节数不同B) 前者带有缓冲,后者没有C) 前者是字符读写,后者是字节读写D) 二者没有区别,可以互换使用10.以下声明合法的是( D )A、default String s;B、public final static native int w( )C、abstract double d;D、abstract final double hyperbolicCosine( )11.关于以下application的说明,正确的是( C )1.class StaticStuff2.{3.static int x=10;4.static { x+=5;}5.public static void main(String args[ ])6.{7.System.out.println(“x=”+ x);8.}9.static { x/=3;}10. }A、4行与9行不能通过编译,因为缺少方法名和返回类型B、9行不能通过编译,因为只能有一个静态初始化器C、编译通过,执行结果为:x=5D、编译通过,执行结果为:x=312.关于以下程序代码的说明正确的是( D )1.class HasStatic{2.private static int x=100;3.public static void main(String args[ ]){4.HasStatic hs1=new HasStatic( );5.hs1.x++;6.HasStatic hs2=new HasStatic( );7.hs2.x++;8.hs1=new HasStatic( );9.hs1.x++;10.HasStatic.x- -;11.System.out.println(“x=”+x);12.}13.}A、5行不能通过编译,因为引用了私有静态变量B、10行不能通过编译,因为x是私有静态变量C、程序通过编译,输出结果为:x=103D、程序通过编译,输出结果为:x=10213.以下选项中循环结构合法的是( C )A、while (int i<7){ i++;System.out.println(“i is “+i);}B、int j=3;while(j){System.out.println(“ j is “+j);}C、int j=0;for(int k=0; j + k !=10; j++,k++){System.out.println(“ j is “+ j + “k is”+ k);}D、int j=0;do{System.out.println( “j is “+j++);if (j = = 3) {continue loop;}}while (j<10);14.类Test1定义如下:1.public class Test1{2.public float aMethod(float a,float b){ } 3.4.}将以下哪种方法插入行3是不合法的。

Java 笔试题含答案

Java 笔试题含答案

班级:_______________ 学号:______________ 姓名:___________Java 笔试题(可多选)1. 下面哪些是Thread类的方法(ABD)A start()B run()C exit()D getPriority()2. 下面关于类的说法正确的是(A)A 继承自ThrowableB SerialableC 该类实现了Throwable 接口D 该类是一个公共类3. 下面程序的运行结果是(false )String str1 = "hello";String str2 = "he" + new String("llo");== str2);4.下列说法正确的有(C)A.class中的constructor不可省略B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行D.一个class只能定义一个constructor5. 指针在任何情况下都可进行>, <, >=, <=, ==运算(true )6. 下面程序的运行结果:(B)public static void main(String args[]) {Thread t = new Thread() {public void run() {pong();}};();"ping");}static void pong() {"pong");}A pingpongB pongpingC pingpong和pongping都有可能D 都不输出7. 下列属于关系型数据库的是(AB)A. Oracle B MySql C IMS D MongoDB8. GC(垃圾回收器)线程是否为守护线程(true )9. volatile关键字是否能保证线程安全(false )10. 下列说法正确的是(AC)A LinkedList继承自ListB AbstractSet继承自SetC HashSet继承自AbstractSetD WeakMap继承自HashMap11. 存在使i + 1 < i的数吗(存在)12. 的数据类型是(B)A floatB doubleC FloatD Double13. 下面哪个流类属于面向字符的输入流(A )ABufferedWriterBFileInputStreamCObjectInputStreamD InputStreamReader14. Java接口的修饰符可以为(CD)A privateB protectedC finalD abstract15. 不通过构造函数也能创建对象吗(A)A 是B 否16. ArrayList list = new ArrayList(20);中的list扩充几次(A)A 0B 1C 2D 317. 下面哪些是对称加密算法(AB)A DESB AESC DSAD RSA18.新建一个流对象,下面哪个选项的代码是错误的(B)A)new BufferedWriter(new FileWriter(""));B)new BufferedReader(new FileInputStream(""));C)new GZIPOutputStream(new FileOutputStream(""));D)new ObjectInputStream(new FileInputStream(""));19. 下面程序能正常运行吗(yes )public class NULL {public static void haha(){"haha");}public static void main(String[] args) { ((NULL)null).haha();}}20. 下面程序的运行结果是什么()class HelloA {public HelloA() {"HelloA");}{ "I'm A class"); }static { "static A"); }public class HelloB extends HelloA {public HelloB() {"HelloB");}{ "I'm B class"); }static { "static B"); }public static void main(String[] args) {new HelloB();}}Static AStatic BHello AI’m A classHelp BI’m B Class21.getCustomerInfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOException,将会输出什么结果(A)public void getCustomerInfo() {try {下面代码的运行结果为:(C)import .*;import .*;public class foo{public static void main (String[] args){String s;"s=" + s);}}A代码得到编译,并输出“s=”B代码得到编译,并输出“s=null”C由于String s没有初始化,代码不能编译通过D代码得到编译,但捕获到NullPointException异常23. "5" + 2);的输出结果应该是(A)。

正式应聘的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开发工程师招聘笔试题及解答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笔试题库及其答案

一.单选题1)在JAVA中,要判断D盘下是否存在文件abc.txt,应该使用以下()判断语句。

(选择一项)a)if(new File(44drabc.txt,,) .exists() = =1)b)if(File.exists(u drabc.txt,,) = =1)c)if(new File(44d√abc.txt,,) .exists())d)if(File.exists(<4d:/abc.txt))答案:C2)在java中,()对象可以使用键/值的形式保存数据。

(选择一项)a)ArrayListb)HashSetc)HashMapd)LinkedList答案:C3)给定java代码,如下:public byte count (byte b 1, byte b2 ) {return;)要使用这段代码能够编译成功,横线处可以填入O 0 (选择一项)a) (byte) (bl-b2)b ) (byte) b 1 -b2c)bl-b2d) (byte) b 1 ∕b2答案:A4)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。

(选择一项)a)protectedb)privatec)publicd)friendly答案:C5) 在Java中,下列()语句不能通过编译。

(选择一项)a)String s= ςςjoin,,+ 44was,,+ “here”;b)String s= "join”+3;c)int a= 3+5d)float f=5+5.5;答案:D6)给定java代码如下,运行时,会产生()类型的异常。

(选择一项)String s = nulh s.concat (“abc”);a) ArithmeticExceptionb) NullPointerExceptionc) IOExceptiond) EOFException答案:B7)给定如下java代码,编译运行之后,将会输出()。

java基础笔试题(答案已整理)

java基础笔试题(答案已整理)

java基础笔试题(答案已整理)Java基础试题一、选择题(1*30=30)1.Java提供哪几种运算符?多选(ABCD)A) 算术运算符 B) 位运算符 C) 关系运算符 D) 逻辑运算符E) 条件运算符ng包的哪个方法比较两个对象是否相等返回true?(B)A: toString() B: equals() C: compare D: 以上都不正确3.下列对Java的变量与函数说法正确的是?多选(ACE)A) 变量是用来保存数据的 B) 变量是用来实现操作过程的C) 函数是用来实现操作过程的 D) 函数是用来保存数据的 E)函数的参数是数据的入口4.已知:int[] a = new int[100]。

在下列给出的数组元素中,非法的是?(D)A: a[0] B: a[1] C: a[99] D: a[100]5.在Java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数、类型或顺序各不相同,传值也可以各不相同。

这种面向对象程序的特性称为?(C)A: 隐藏 B: 覆盖 C: 重载 D: Java不支持此特性6.()是一组常量和抽象方法的集合。

(D)A: 实例 B: 类 C: 包 D: 接口7.下面关于数组说法正确的是?多选(ABCDE)A) 一维数组实质上是相同类型变量的列表 B) 创建一个数组首先定义数组变量所需的类型 C) char c[]=new char[26];可声明一个含有26个元素的char型数组 D) 当为一个多维数组的时候分配内存时,仅需要为第一维指定内存,然后再分配其他维的存 E) int twain[][] = new int[4][5];可声明一个二维数组8.Java源文件和编译后的文件扩展名分别为?(B)A:。

class和.java B:。

java和.class C:。

class和.class D:。

java和.java9.设x=5;则y=x--和y=--x的结果,使y分别为?(C)A: 5,5 B: 5,6 C: 5,4 D: 4,410.若x是float类变量,x=10/4;则x的值是?(B)A: 2 B: 2.0 C: 2,5 D: 编译错误11.下面方法中,用于调度线程使其运行的是?多选(BC)A。

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笔试题以及答案详解一一、单项选择题1.Java是从()语言改进重新设计。

A.Ada B.C++ C.Pasacal D.BASIC答案:B2.下列语句哪一个正确()A.Java程序经编译后会产生machine codeB.Java程序经编译后会产生byte codeC.Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的有()A.class中的constructor不可省略B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。

4.提供Java存取数据库能力的包是()A.java.sql B.java.awt C.ng D.java.swing 答案:A5.下列运算符合法的是()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 variableB.形式参数可被字段修饰符修饰C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象答案:A详解:9.下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法答案:D二、多项选择题1.Java程序的种类有()A.类(Class)B.Applet C.Application D.ServletJava程序的种类有:1、内嵌于web文件中,由浏览器来观看的Applet2、可独立运行的Application3、服务器端的Servlet2.下列说法正确的有()A.环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括class pathC.javac一次可同时编译数个Java源文件D.javac.exe能指定编译结果要置于哪个目录(directory)答案:BCD3.下列标识符不合法的有()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能改变实际参数的内容答案:ACD7.下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法答案:CD解释:8.下列说法错误的有()A.Java面向对象语言容许单独的过程与函数存在B.Java面向对象语言容许单独的方法存在C.Java语言中的方法属于类中的成员(member)D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同答案:ABC解释:9.下列说法错误的有()A.能被java.exe成功运行的java class文件必须有main()方法B.J2SDK就是Java APIC.Appletviewer.exe可利用jar选项运行.jar文件D.能被Appletviewer成功运行的java class文件必须有main()方法答案:BCD解释:三、判断题1.Java程序中的起始类名称必须与存放该类的文件名相同。

JAVA笔试题(附答案)

JAVA笔试题(附答案)
4、int和Integer有什么区别
Java提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。
原始类型封装类
booleanBoolean
charCharacter
byteByte
shortShort
5、error和exception有什么区别?
error表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。
exception表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。
6、shorts1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
答案:ABC
9.下列说法错误的有()
A.能被java.exe成功运行的java class文件必须有main()方法
B.J2SDK就是Java API
C.Appletviewer.exe可利用jar选项运行.jar文件
D.能被Appletviewer成功运行的java class文件必须有main()方法
我对于D的理解是这样的:静态的只能访问静态的,非静态的可以访问静态的,也就是说类方法中不能调用实例方法。非要说他错,是不是加了绝对二字。
8.下列说法错误的有()
A.Java面向对象语言容许单独的过程与函数存在
B.Java面向对象语言容许单独的方法存在
C.Java语言中的方法属于类中的成员(member)

java笔试题及答案

java笔试题及答案

9、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错
答:short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型)short s1 = 1; s1 += 1;(可以正确编译)
10、Java有没有goto
不写时默认为friendly
2、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)
答:匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现
7、String s = new String("xyz");创建了几个String Object
答:两个,一个字符对象,一个字符对象引用对象
8、Math.round(11.5)等於多少? Math.round(-11.5)等於多少
答: Math.round(11.5)==12;Math.round(-11.5)==-11;round方法返回与参数最接近的长整数,参数加1/2后求其floor
13、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别
答:Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判读两个Set是否相等
equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值

java工程师笔试题及答案

java工程师笔试题及答案

java工程师笔试题及答案# Java工程师笔试题及答案一、选择题(每题2分,共10分)1. 下列哪个不是Java的基本数据类型?- A. int- B. String- C. double- D. boolean答案:B(String是引用类型)2. Java中,哪个关键字用于定义类?- A. class- B. struct- C. interface- D. enum答案:A(class用于定义类)3. 在Java中,哪个方法是每个类都必须重写的?- A. `toString()`- B. `equals()`- C. `hashCode()`- D. `main()`答案:A(`toString()`方法通常被重写以提供类的字符串表示)4. 下列哪个是Java集合框架中的接口?- A. ArrayList- B. List- C. HashMap- D. Set答案:B(List是接口)5. 在Java中,哪个关键字用于实现多态?- A. extends- B. implements- C. override- D. abstract答案:A(extends关键字用于继承,是实现多态的一种方式)二、简答题(每题5分,共20分)1. 简述Java中接口和抽象类的区别。

答案:接口定义了方法的规范,但不能包含实现。

一个类可以实现多个接口。

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

一个类只能继承一个抽象类。

2. 解释Java中的异常处理机制。

答案:Java的异常处理机制基于`try`、`catch`和`finally`块。

`try`块包含可能抛出异常的代码,`catch`块捕获并处理异常,`finally`块包含无论是否发生异常都会执行的代码。

3. 什么是Java的垃圾回收机制?答案:垃圾回收是Java运行时环境自动释放不再使用的对象所占用的内存的过程。

垃圾回收器定期运行,查找没有被任何引用的对象,并释放它们占用的内存。

java笔试题带答案

java笔试题带答案

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

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

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

12javaC.continueD。

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

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

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

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

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

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

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

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

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

A)privateB)claC)e某tendD)implement8.为AB类的定义一个公共的构造函数,该方法头的形式为()A.voidAB()B。

publicvoidmethod()C.publicmethod()D。

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

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

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

FlowLayoutC。

GridLayoutD。

CardLayout11.以下哪个表达式是不合法的()A.String某=”Hello”;inty=9;某+=y;B.String某=”Hello”;inty=9;if(某==y){}C.String某=”Hello”;inty=9;某=某+y;D.String某=null;inty=(某!=null)&&(某.length()>0)12.claperon{publicintaddvalue(inta,intb){int;=a+b;return;}}clachilde某tendparent{}若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue方法头的描述哪个是正确的:A)intaddvalue(intI,intj)B)voidaddvalue()C)voidaddvalue(doublei)D)intaddvalue(inta)13.下面程序在fun()方法当出现数组下标超过界限的情况下的输出结果是:()publicvoidtet(){try{fun();Sytem.out.print(“情况1”);}catch(ArrayInde某OutOfBoundE某ceptione){Sytem.out.print(“情况2”);}catch(E某ceptione){Sytem.out.print(“情况3”);}finally{Sytem.out.print(“finally”);}}A.情况1B。

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

J a v a笔试题及答案 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】Java笔试题及答案一、单项选择题是从()语言改进重新设计。

++答案:B2.下列语句哪一个正确()A. Java程序经编译后会产生machine codeB. Java程序经编译后会产生byte codeC. Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的有()A. class中的constructor不可省略B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。

package ;public class TestConStructor{public TestConStructor(){}public void TestConStructor(){}public static void main(String[] args){TestConStructor testConStructor = new TestConStructor(); ();}}4.提供Java存取数据库能力的包是()答案:A5.下列运算符合法的是()A.&&B.<> D.:=答案:A详解:java 中没有<> := 这种运算符, if else不算运算符6.执行如下程序代码a=0;c=0;do{--c;a=a-1;}while(a>0);后,C的值是()D.死循环答案:C详解:Do while 中的语句是至少要执行一次的。

执行顺序为:do 中的语句,然后价差while条件,如果为false,则终止;如果为true,则继续执行Do中的语句,然后再检查while条件,如此循环。

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子句中匹配异常是一种精确匹配 exception D. 可能抛出系统异常的方法是不需要申明异常的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工程师笔试题一、填空题(本大题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软件工程师笔试题及答案一、选择题1. Java中,下列哪个关键字用于声明一个类?A. classB. interfaceC. publicD. private答案:A2. 在Java中,下列哪个选项是正确的继承关系?A. 一个类可以继承多个类B. 一个类只能继承一个类C. 一个类不能继承任何类D. 一个类可以继承多个接口答案:B3. 下列哪个是Java中合法的变量名?A. 2variableB. variable2C. _variableD. variable!答案:B4. 在Java中,下列哪个关键字用于捕获异常?A. tryB. catchC. throwD. throws答案:B5. Java中,下列哪个选项是正确的多线程创建方式?A. 继承Thread类B. 实现Runnable接口C. 继承Runnable接口D. 实现Thread类答案:A、B二、填空题1. Java中,用于定义接口的关键字是______。

答案:interface2. Java中,用于定义抽象方法的关键字是______。

答案:abstract3. 在Java中,用于定义私有方法的关键字是______。

答案:private4. Java中,用于定义构造方法的关键字是______。

答案:构造方法5. 在Java中,用于定义包的关键字是______。

答案:package三、简答题1. 请简述Java中接口和抽象类的区别。

答案:接口是一种完全抽象的结构,它不能包含实现细节,只能包含抽象方法和常量。

抽象类可以包含抽象方法和具体方法,可以有构造方法,并且可以包含成员变量。

2. 请简述Java中垃圾回收机制的作用。

答案:Java的垃圾回收机制用于自动回收不再使用的对象,释放内存资源,防止内存泄漏。

四、编程题1. 编写一个Java程序,实现计算两个整数的和。

答案:```javapublic class SumCalculator {public static void main(String[] args) {int num1 = 10;int num2 = 20;int sum = num1 + num2;System.out.println("The sum is: " + sum);}}```2. 编写一个Java程序,实现一个简单的计数器,从1数到10。

Java基础笔试题及答案

Java基础笔试题及答案

Java基础笔试题及答案Java基础笔试题及答案一.选择题(共50题,每题2分,共100分。

多选题选不全或选错都不得分。

)1.以下属于面向对象的特征的是(C,D)。

(两项)A)重载B)重写C)封装D)继承2.以下代码运行输出是(C)publicclassPerson{privateStringname=”Person”;intage=0;}publicclassChildextendsPerson{publicStringgrade;publicstaticvoidmain(String[]args){Personp=newChild();System.out.println();}}A)输出:PersonB)没有输出C)编译出错D)运行出错3.在使用super和this关键字时,以下描述正确的是(A)A)在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过B)super()和this()不一定要放在构造方法内第一行C)this()和super()可以同时出现在一个构造函数中D)this()和super()可以在static环境中使用,包括static方法和static语句块4.以下对封装的描述正确的是(D)A)只能对一个类中的方法进行封装,不能对属性进行封装B)如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用C)封装的意义不大,因此在编码时尽量不要使用D)封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性5.以下对继承的描述错误的是(A)A)Java中的继承允许一个子类继承多个父类B)父类更具有通用性,子类更具体C)Java中的继承存在着传递性D)当实例化子类时会递归调用父类中的构造方法6.以下程序的运行结果是(D)classPerson{publicPerson(){System.out.println(“thisisaPerson”); }}publicclassTeacherextendsPerson{ privateStringname=”tom”; publicTeacher(){System.out.println(“thisisateacher”); super();}publicstaticvoidmain(String[]args){ Teacherteacher=newTeacher();System.out.println();}}A)thisisaPersonthisisateachertomB)thisisateacherthisisaPersontomC)运行出错D)编译有两处错误7.以下说法错误的是()A)super.方法()可以调用父类的所有非私有方法B)super()可以调用父类的所有非私有构造函数C)super.属性可以调用父类的所有非私有属性D)this和super关键字可以出现在同一个构造函数中8.以下关于final关键字说法错误的是(A,C)(两项)B)final修饰的类肯定不能被继承C)final修饰的方法不能被重载D)final修饰的变量不允许被再次赋值9.访问修饰符作用范围由大到小是(D)A)private-default-protected-publicB)public-default-protected-privateC)private-protected-default-publicD)public-protected-default-private10.以下(D)不是Object类的方法A)clone()B)finalize()C)toString()D)hasNext()11.多态的表现形式有(A)A)重写B)抽象C)继承D)封装12.以下对重载描述错误的是(B)A)方法重载只能发生在一个类的内部B)构造方法不能重载C)重载要求方法名相同,参数列表不同D)方法的返回值类型不是区分方法重载的条件13.以下(D)添加到ComputerBook中不会出错classBook{protectedintgetPrice(){return30;}}publicclassComputerBookextendsBook{}A)protectedfloatgetPrice(){}B)protectedintgetPrice(intpage){}C)intgetPrice(){}D)publicintgetPrice(){return10;}14.以下对抽象类的描述正确的是(C)A)抽象类没有构造方法B)抽象类必须提供抽象方法C)有抽象方法的类一定是抽象类D)抽象类可以通过new关键字直接实例化15.以下对接口描述错误的有(D)A)接口没有提供构造方法B)接口中的方法默认使用public、abstract修饰C)接口中的属性默认使用public、static、final修饰D)接口不允许多继承。

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

答案:正确
2.Unicode是用16位来表示一个字的。

()
答案:正确
3.原生类中的数据类型均可任意转换。

()
答案:错误
1.分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句。

答案:
BOOL :if ( !a ) or if(a)
int :if ( a == 0)
float :const EXPRESSION EXP = 0.000001
if ( a < EXP && a >-EXP)
pointer : if ( a != NULL) or if(a == NULL)
2.请说出const与#define 相比,有何优点?
答案:1)const 常量有数据类型,而宏常量没有数据类型。

编译器可以对前者进行类型安全检查。

而对后者只进行字符替换,没有类型安全检查,并且在字符替换可能会产生意料不到的错误。

2)有些集成化的调试工具可以对const 常量进行调试,但是不能对宏常量进行调试。

3.简述数组与指针的区别?
数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。

指针可以随时指向任意类型的内存块。

(1)修改内容上的差别
char a[] = “hello”;
a[0] = …X‟;
char *p = “world”; // 注意p 指向常量字符串
p[0] = …X‟; // 编译器不能发现该错误,运行时错误
(2) 用运算符sizeof 可以计算出数组的容量(字节数)。

sizeof(p),p 为指针得到的是一个指针变量的字节数,而不是p 所指的内存容量。

C++/C 语言没有办法知道指针所指的内存容量,除非在申请内存时记住它。

注意当数组作为函数的参数进行传递时,该数组自动退化为同类型的指针。

char a[] = "hello world";
char *p = a;
cout<< sizeof(a) << endl; // 12 字节
cout<< sizeof(p) << endl; // 4 字节
计算数组和指针的内存容量
void Func(char a[100])
{
cout<< sizeof(a) << endl; // 4 字节而不是100 字节
}
4.类成员函数的重载、覆盖和隐藏区别?
答案:
a.成员函数被重载的特征:
(1)相同的范围(在同一个类中);
(2)函数名字相同;
(3)参数不同;
(4)virtual 关键字可有可无。

b.覆盖是指派生类函数覆盖基类函数,特征是:
(1)不同的范围(分别位于派生类与基类);
(2)函数名字相同;
(3)参数相同;
(4)基类函数必须有virtual 关键字。

c.“隐藏”是指派生类的函数屏蔽了与其同名的基类函数,规则如下:
(1)如果派生类的函数与基类的函数同名,但是参数不同。

此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。

(2)如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual 关键字。

此时,基类的函数被隐藏(注意别与覆盖混淆)
5. There are two int variables: a and b, don‟t use “if”, “? :”, “switch”or other ju dgement statements, find out the biggest one of the two numbers.
答案:( ( a + b ) + abs( a - b ) ) / 2
6. 如何打印出当前源文件的文件名以及源文件的当前行号?
答案:
cout << __FILE__ ;
cout<<__LINE__ ;
__FILE__和__LINE__是系统预定义宏,这种宏并不是在某个文件中定义的,而是由编译器定义的。

7. main 主函数执行完毕后,是否可能会再执行一段代码,给出说明?
答案:可以,可以用_onexit 注册一个函数,它会在main 之后执行int fn1(void), fn2(void), fn3(void), fn4 (void);
void main( void )
{
String str("zhanglin");
_onexit( fn1 );
_onexit( fn2 );
_onexit( fn3 );
_onexit( fn4 );
printf( "This is executed first.\n" ); }
int fn1()
{
printf( "next.\n" );
return 0;
}
int fn2()
{。

相关文档
最新文档