2021年java应届毕业生笔试题
- 格式:docx
- 大小:17.44 KB
- 文档页数:12
java笔试题大集合及答案# Java笔试题大集合及答案1. Java中接口和抽象类的区别是什么?- 接口和抽象类都是抽象的,不能直接实例化。
- 接口中所有的方法默认是public的,而抽象类可以包含非public的成员。
- 一个类可以实现多个接口,但只能继承一个抽象类。
- 接口中不能包含构造方法,而抽象类可以。
- 接口中的字段默认是public static final的,而抽象类中的字段可以是任意类型。
2. Java中如何实现单例模式?- 单例模式确保一个类只有一个实例,并提供一个全局访问点。
- 可以通过私有化构造方法,提供一个私有静态变量来保存实例,并提供一个公有静态方法来获取实例。
3. Java中集合框架的层次结构是怎样的?- 集合框架分为两大类:单元素集合和复合元素集合。
- 单元素集合包括List、Set和Queue。
- 复合元素集合包括Map。
- 每个接口都有多个实现类,如ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等。
4. Java中如何实现多线程?- 可以通过继承Thread类并重写run方法来实现。
- 也可以通过实现Runnable接口并重写run方法,然后创建Thread对象来实现。
- Java 5引入了Executor框架,可以更方便地管理线程。
5. Java中异常处理的机制是什么?- Java使用try-catch-finally块来处理异常。
- try块中编写可能抛出异常的代码。
- catch块中编写处理异常的代码。
- finally块中的代码无论是否发生异常都会执行。
6. Java中StringBuffer和StringBuilder的区别是什么?- StringBuffer是线程安全的,而StringBuilder不是。
- StringBuffer的方法是同步的,StringBuilder的方法不是。
- 在单线程环境下,StringBuilder的性能优于StringBuffer。
正式应聘的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二、改错题,如果有错误,请指出并修正。
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常见基础知识笔试题:一、Java基础语法1. 请解释Java中的变量和常量有什么区别?2. 请问Java中的关键字有哪些?请列举出来。
3. 请解释Java中的注释有哪几种形式?4. 请说一下Java的数据类型有哪些?5. 请解释Java中的运算符有哪些?二、面向对象1. 请解释面向对象的三大特性是什么?2. 请解释Java中的继承,多态,封装和抽象类分别是什么?3. 请解释Java中的接口是什么?4. 请解释Java中的重载和重写有什么区别?5. 请解释Java中的构造方法和普通方法有何区别?三、异常处理1. 请解释Java中的异常处理机制是什么?2. 请解释Java中的异常分类有哪些?3. 请解释Java中的异常处理关键字try,catch,finally的作用分别是什么?4. 请解释Java中的自定义异常是什么?5. 请解释Java中的异常链是什么?四、集合类1. 请解释Java中的集合类有哪些?2. 请解释Java中的ArrayList和LinkedList的区别。
3. 请解释HashSet和TreeSet的区别。
4. 请解释HashMap和TreeMap的区别。
5. 请解释Java中如何遍历一个集合?五、多线程1. 请解释Java中的线程是什么?2. 请解释Java中的线程实现方式有哪些?3. 请解释Java中的线程池是什么?4. 请解释Java中的synchronized关键字是做什么的?5. 请解释Java中的volatile关键字是做什么的?六、IO流1. 请解释Java中的IO是什么?2. 请解释Java中的字节流和字符流有什么区别?3. 请解释Java中的输入流和输出流有什么区别?4. 请解释Java中的文件读写操作步骤是什么?5. 请解释Java中的RandomAccessFile是什么?以上是java常见基础知识笔试题。
希望这些问题能够帮助读者熟悉Java的基础语法、面向对象、异常处理、集合类、多线程以及IO流的相关知识,在笔试中更好地发挥自己的能力。
以下是一份Java高级开发的笔试题,包含了从基础知识到高级特性的各种问题。
1. 什么是Java?请简要描述其特点。
2. Java的主要应用领域有哪些?3. 什么是面向对象编程(OOP)?请列举Java中的几个主要面向对象特性。
4. 什么是垃圾回收(Garbage Collection)?它在Java中是如何工作的?5. 请解释Java中的异常处理机制。
6. Java中的继承和多态是什么?请给出一个示例。
7. 请描述Java中的泛型和它在集合框架中的应用。
8. 请解释Java中的Lambda表达式及其用途。
9. Java中的并发编程有哪些工具和技术?请列举几个。
10. 请解释Java中的Stream API及其用途。
11. 如何使用Java中的注解(Annotations)?请给出一个示例。
12. 请解释Java中的反射(Reflection)及其用途。
13. 请描述Java中的泛型擦除(Type Erasure)及其影响。
14. 如何使用Java中的序列化(Serialization)和反序列化(Deserialization)?请给出一个示例。
15. Java中的装饰器模式是什么?请给出一个示例。
16. 如何使用Java中的静态导入(Static Imports)?请给出一个示例。
17. Java中的接口和抽象类有什么区别?请给出一个使用场景。
18. 如何使用Java中的Optional类来避免空指针异常?请给出一个示例。
19. 请解释Java中的final、finally和finalize关键字的作用和区别。
20. 请描述Java中的JVM参数及其对应用程序性能的影响。
这只是一个基础的Java高级开发的笔试题,可以根据需要进行适当的扩展和深化,以满足不同公司和项目的需求。
大学java笔试题库及答案1. 以下哪个选项是Java语言的特点?A. 面向过程B. 面向对象C. 面向组件D. 面向服务答案:B2. Java中,用于定义类的关键字是:A. classB. publicC. privateD. interface答案:A3. 在Java中,下列哪个关键字用于声明一个方法?A. classB. methodC. functionD. void答案:D4. Java中,下列哪个关键字用于声明一个私有变量?A. publicB. privateC. protectedD. static答案:B5. 在Java中,下列哪个关键字用于声明一个静态变量?A. publicB. privateC. protectedD. static答案:D6. Java中,下列哪个关键字用于声明一个接口?A. classB. interfaceC. abstractD. final答案:B7. 在Java中,下列哪个关键字用于声明一个抽象类?A. abstractB. finalC. staticD. interface答案:A8. Java中,下列哪个关键字用于实现多态性?A. extendsB. implementsC. overrideD. super答案:A9. 在Java中,下列哪个关键字用于声明一个异常?A. throwB. throwsC. tryD. catch答案:B10. Java中,下列哪个关键字用于声明一个同步方法?A. synchronizedB. staticC. finalD. abstract答案:A11. 在Java中,下列哪个关键字用于声明一个内部类?A. innerB. nestedC. classD. private答案:C12. Java中,下列哪个关键字用于声明一个枚举类型?A. enumB. listC. setD. map答案:A13. 在Java中,下列哪个关键字用于声明一个泛型?A. genericB. typeC. extendsD. <>答案:D14. Java中,下列哪个关键字用于声明一个注解?A. annotationB. commentC. noteD. @interface答案:D15. 在Java中,下列哪个关键字用于声明一个线程?A. threadB. runnableC. synchronizedD. concurrent答案:B。
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工程师笔试题请在1个小时内完成测试题,题目较多,注意把控时间。
基本信息:[矩阵文本题] *一、单选题1. 关于Spring的事务传播特性,以下描述错误的是()。
[单选题] *A. PROPAGATION_REQUIRED:支持当前事务,如果当前没有事务,就抛出异常;(正确答案)B. PROPAGATION_SUPPORTS:支持当前事务,如果当前没有事务,就以非事务方式执行;C. PROPAGATION_REQUIRES_NEW:新建事务,如果当前存在事务,把当前事务挂起;D. PROPAGATION_NESTED:支持当前事务,新增Savepoint点,与当前事务同步提交或回滚;2. 关于线程和线程状态的描述,以下错误的是()。
[单选题] *A. 调用sleep()方法时,当sleep()时间结束或被打断后,线程重新回到运行状态;(正确答案)B. 调用join()方法时,当join()中断或IO完成,线程重新回到可运行状态;C. 调用 wait()方法后,线程处于等待锁定池,直到notify()或notifyAll(),线程被唤醒放到锁定池;D. 对运行状态的线程加同步锁,会使其进入锁定池。
当同步锁被释放后进行可运行状态;3. 关于线程同步的描述,以下错误的是()。
[单选题] *A. volatile可用于修饰共享变量,其保证了线程的可见性且提供了一定的有序性,但是无法保证原子性。
使用了此修饰符可禁止CPU指令重排序;(正确答案)B. synchronized用来修饰一个方法或者代码块时,能够保证在同一时刻最多只有一个线程能执行该段代码,且在获锁的的过程中线程是不能被中断的;C. lock比synchronized更灵活,性能更高。
lock()和unlock()必须成对出现,否则将会导致程序出现重大问题;D. 某个类中存在多个synchronized方法,当一个线程正在执行其中一个方法时,该方法将被锁定,其他线程不能执行该方法,只能执行其他方法;4. 关于JAVA异常类的描述,以下正确的是()。
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)的运行结果是。
1. 填空题:Java中的类是对象的________。
答案:模板/蓝图
2. 填空题:在Java中,用于访问数组元素的语法是________。
答案:arrayName[index]
3. 填空题:Java中,用于声明一个整型变量的关键字是________。
答案:int
4. 填空题:Java中,用于实现多态性的关键字是________。
答案:extends
5. 填空题:Java中,用于抛出异常的关键字是________。
答案:throws
6. 简答题:请简述Java中的四种访问修饰符及其作用范围。
答案:Java中有四种访问修饰符,分别是public、protected、default(无修饰符)和private。
它们的作用范围如下:
- public:公共访问级别,可以在任何地方访问;
- protected:受保护访问级别,只能在同一个包内或者子类中访问;
- default(无修饰符):默认访问级别,只能在同一个包内访问;
- private:私有访问级别,只能在本类中访问。
7. 简答题:请简述Java中的继承和接口的区别。
答案:Java中的继承和接口都是实现代码复用的方式,但它们之间有以下区别:
- 继承是一种“是一个”的关系,子类继承了父类的属性和方法,可以对父类的方法进行重写或扩展;而接口是一种“能做什么”的关系,类可以实现多个接口,需要实现接口中定义的所有方法。
- 继承支持多层继承,即一个子类可以继承多个父类;而接口不支持多重继承,一个类只能实现一个接口。
- 继承使用关键字extends表示,而接口使用关键字implements表示。
算法软件科技Java工程师笔试题一、选择题(可多选)。
1、Java 之所以可以实现夸平台,是因为Java 程序在运行时使用了:A: JDK ( Java Development Kit )B: JRE ( Java Runtime Environment )C: JVM ( Java Virtual Machine )D: OS ( Operating System )2、下列不是Java语言中的关健字的是:A: public B: Static C:main D:void3、以下程序中最终输出i 的值是:int i = 999;i--;++i;System.out.println( i++ );A: 998 B: 999 C:1000 D:10014、那个是合法的byte 类型的数据:A: 128 B: 127 C:-129 D: (int)-1305、以下b 的值是:byte b = (byte)129;A: -126 B: -127 C:-128 D:-1296、在JDK 1.7 中,对于switch 语句,switch 后面的( ) 中不可以是哪种类型:A: byte B: char C: short D: int E: StringF: 枚举G: float H: double7、对于以下代码,输出结果是:for( int i = 4 ; i > 0 ; i-- ){int j = 0 ;do{j++;if( j == 2 ){break;}}while( j < i );System.out.print( j );A: 4 3 2 1 B: 1 2 2 2 C: 2 2 2 1 D: 2 2 2 28、以下声明数组的方式,哪种是正确的:A: int[ 3 ][ 4 ] array;B: int[ 3 ] [] array;C: char [] array [] ;D: String[][] array;E: Object array[][];F: Object array[][ 3 ];9、下列关于package 和import 语句的描述,正确的是:A: 同一个类中package 可以出现1次或多次B: 同一个类中import 可以出现1 此或多次C: 对于同一个类中,import 语句必须出现在该类的第一行(不含注释) D: 同一个类中,package 必须出现在该类的第一行(不含注释)10、对于以下关于可变长参数的定义,正确的是:A: public void show( String[] aa, String... a ){}B: public void show( String... a , String[] aa){}C: public void show( String... a ){}D: public void show( String a, double b , String... a){}11、关于接口的使用,正确的是:public interface Usb {}public abstrace class Interface {}A: public interface Usb1 extends Usb {}B: public interface Usb1 implements Usb {}C: public interface Usb1 extends Interface {}D: public interface Usb1 implements Interface {}12、以下哪个不是Collection的子接口?A: List B: Set C: SortedSet D: Map13、对Map 的用法,正确的有:A: new java.util.Map().put("key" , "value") ;B: new java.util.SortedMap().put("key" , "value") ;C: new java.util.HashMap().put( null , null ) ;D: new java.util.TreeMap().put( 0 , null ) ;14、对于异常处理,一下描述哪个是正确的:A: 捕获异常是一种积极的异常处理方式,通过try 、catch 等关键字来实现B: try 必须跟catch 连用,而finally 是可以没有的C: catch 之后的( ) 用于接收异常对象,因此需要指定异常类型和变量名称,比如catch( Exception e )D: 在JDK 1.7 中,允许在catch 中捕获多个类型异常,如catch( NullPointerException e1 | ClassCastException e2 )E: 对于finally 代码块而言,仅当执行try 语句并没有触发异常时才执行,如果发生异常则进入catch 代码块,不再执行finally 代码块15、Hashtable 和HashMap 的区别是:A: Hashtable 是一个哈希表,该类继承了AbstractMap,实现了Map 接口B: HashMap 是内部基于哈希表实现,该类继承AbstractMap,实现Map接口C: Hashtable 线程安全的,而HashMap 是线程不安全的D: Properties 类继承了Hashtable 类,而Hashtable 类则继承Dictionary 类E: Hashtable 直接使用对象的hashCode ,而HashMap 重新计算hash值。
java考试题及答案一、选择题1. Java中用于创建新对象的关键字是()。
A. classB. newC. thisD. super答案:B2. 下列哪个选项是Java语言的特点?()A. 支持多继承B. 所有代码必须位于类中C. 支持自动垃圾回收D. 所有选项都是答案:C3. 在Java中,如果需要实现多线程,应该继承哪个类?()A. ObjectB. ThreadC. RunnableD. System答案:B4. 下列关于Java异常处理的描述,哪项是错误的?()A. try块可以单独使用B. catch块必须跟随在try块之后C. finally块用于执行清理操作,无论是否发生异常都会执行D. throw关键字用于手动抛出异常答案:A5. 在Java中,下列哪个是正确的数组初始化方式?()A. int[] arr = {1, 2, 3} {4, 5, 6};B. int[] arr = new int[3];C. int[] arr = new int[] {1, 2, 3};D. int[] arr = {1, 2, 3, 4, 5};答案:C二、填空题1. 在Java中,每一个类都是从______类隐式继承而来的,因此所有的类都具有该类的属性和方法。
答案:Object2. Java中的______关键字用于定义一个类为另一个类的子类,实现代码的复用。
答案:extends3. 当需要在Java程序中捕获多种类型的异常时,可以使用______关键字来指定多个捕获类型。
答案:catch4. 在Java中,______关键字用于定义一个方法或构造器的参数类型和顺序。
答案:paramter5. 如果需要在Java中定义一个接口,应该使用______关键字。
答案:interface三、判断题1. Java中的所有异常都是ng包的Throwable类的子类或孙子类。
()答案:正确2. 在Java中,所有的类都必须显式地指定一个父类。
java开发笔试题一、选择题1. 在Java中,用final修饰的变量表示什么含义?A. 变量可以被重新赋值B. 变量只能被赋值一次C. 变量的值在任何情况下都不能改变D. 变量的值只能在声明时初始化2. 下列哪个选项是Java中的非访问修饰符?A. publicB. privateC. staticD. protected3. 在Java中,哪个关键字用于检查对象是否为null?A. issetB. hasValueC. isNotNullD. != null4. 下列关于Java异常处理的描述,哪项是错误的?A. try块中包含可能会抛出异常的代码B. catch块用于捕获并处理异常C. finally块中的代码无论是否发生异常都会被执行D. throw语句用于创建新的异常对象5. 在Java中,如何实现多线程?A. 继承Thread类B. 实现Runnable接口C. 调用Thread类的静态方法start()D. 调用Runnable接口的run()方法二、填空题1. 在Java中,每个类默认继承自______类。
2. ______是Java中用来处理输入输出的类库。
3. 要创建一个对象数组,需要使用关键字______。
4. 在Java中,可以使用______关键字来实现方法的多态。
5. ______是Java中用来创建线程的机制,它位于java.util.concurrent包中。
三、判断题1. Java中的接口可以包含具体实现的方法。
(对/错)2. 所有的Java异常都是ng.Throwable类的子类。
(对/错)3. 在Java中,所有的类都必须继承自一个类。
(对/错)4. 一个Java类可以同时实现多个接口。
(对/错)5. 使用synchronized关键字可以避免多线程环境下的并发问题。
(对/错)四、简答题1. 请简述Java中的垃圾回收机制。
2. 解释Java中的异常处理机制,并给出一个使用try-catch语句的示例。
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开发工程师笔试题与参考答案(某大型央企)(答案在后面)一、单项选择题(本大题有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工程师笔试题及答案一、选择题(每题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中的泛型是什么,并给出一个简单的例子。
2021年初级java程序员笔试题及答案2021年初级java程序员笔试题及答案程序员需要理解一个模块的需求,很多程序员写程序往往只关注一个功能需求,他们把性能指标全部归结到硬件,操作系统和开发环境上,而忽视了本身代码的性能考虑,性能需求指标中。
下面是我整理的关于初级java程序员笔试题及答案,希望大家认真阅读!一、选择题以下对Java语言描述不正确的是(C )A Java语言是一个完全面对对象的语言B Java是结构独立、与平台无关的语言C Java是一种编译性语言D Java是一种解释性语言以下说法正确的是(C )A Java程序文件名必须是和程序文件中定义的类型一致B Java程序文件名可以和程序文件中定义的类名不一致C Java源程序文件的扩展名必须是.javaD以上A、C说法正确,B说法不正确以下有关运行Java应用程序(Application)正确的说法是(B )A Java应用程序是由Java编译器解释执行的B Java应用程序经编译后生成的字节代码可由Java虚拟机解释执行C Java应用程序经编译后可直接在操作系统下运行D Java应用程序经编译后可直接在浏览器中运行4、以下有关标识符说法中正确的是(C )A、任何字符的组合都可以形成一个标识符B、Java的关键字也可以作为标识符使用C、标识符是以字母、下划线或$开头,后跟字母、数字、下划线或$的字符组合D、标识符是不分大小写5、以下说法正确的是(D )A、基本字符数据类型有字符和字符串两种B、字符类型占两个字节,可保存两个字符C、字符类型占两个字节,可保存一个字符D、以上说法都是错误的6、以下有关类型转变的说法错误的是(D )A、低精度类型向高精度类型转换时,不会丢失数据精度B、系统会自动进行(整型或浮点型)低精度类型数据向高精度类型数据的转换C、高精度类型数据向低精度类型数据的转换、整型和浮点型数据之间的转换,必须强制进行,有可能会引起数据丢失D、高精度类型数据向低精度类型转换时,也不会丢失数据精度,因为转换是系统进行的7、以下正确的关系表达式(D )A、xyB、x+yzC、=xD、x+y!=z8、以下正确的逻辑表达式( A)A、(x+y7)(x-y1)B、!(x+y)C、(x+y7)||(z=a)D、(x+y+z)(z=0)9、以下有关条件运算符(?:)说法正确的是( D)A、条件运算符是一个三元运算符,其格式是:表达式1?表达式2:表达式3B、格式中的"表达式1'是关系或者逻辑表达式,其值是boolean值C、若"表达式1'成立,该条件表达式取"表达式2'的值,否则取"表达式3'的值D、以上说法都正确10、在if(表达式)语句中,"表达式'的值必须是(C )A、任意整数值B、字符串C、布尔逻辑值D、非零值11、在switch(表达式)语句中,"表达式'的值必须是(D )A、整数值B、字符值C、布尔逻辑值D、整数或字符值12、下列关于for循环和while循环的说法中,正确的是(A )A、while循环能实现的操作,for循环也能实现B、while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果C、两种循环任何时候都可以替换D、两种循环结构中必须都有循环体,循环体不能为空13、下面表达式中,用来访问数组中的第一个值的是(C )A、intArray[1]B、intArray.1C、intArray[0]D、intArray.014下面的表达式中正确的是(C )String s='你好';if(s=='你好') System.out.println(true);String s='你好';if(s!='你好') System.out.println(false);String s='你好';if(s.equals('你好')) System.out.println(true);String s='你好';if(equals(s,'你好')) System.out.println(true);15String str;System.out.println(str.length());以上语句的处理结果是(A )A、编译报错B、运行结果是nullC、运行结果为0D、随机值16、执行String [ ] s=new String[10];代码后,下面结论正确的是( D)A、s[10]为''B、s[10]为nullC、s[0]未定义D、s.length为1017、构造器(B )被调用。
长春位智天下技术开发有限公司
应届毕业生面试题(Java工程师岗位)
时间:90分钟内
一、选取题(单选)
1package语句对的是:( )
A 必要在程序开头
B 不一定在程序开头
C 可以在import之后
D 包名可以以数字开头
2 java中,关于char类型错误是:( )
A 占2字节
B 可以存储一种英文字母
C 不能存储一种中文
D 其相应封装类是Character
3 关于内部类错误是:( )
A 静态内部类可以访问其外部类非静态属性
B 非静态内部类可以访问其外部类静态属性
C 内部类可以是protected
D 内部类可以是final
4 异常解决对的是: ( )
A 调用任何也许抛出异常办法,都必要捕获try catch 或者throws
B RuntimeException可以不捕获或者throws
C throw 跟throws 用法是同样
D try 必要有catch,可以没有finally
5 Vector 与 ArrayList对的是:( )
A ArrayList 浮现比Vector早
B ArrayList 速度比Vector慢
C ArrayList 没有同步保护,Vector具备同步保护
D ArrayList Vector 两者都是无序集合"
6 关于XML和HTML语言错误是:( )
A HTML语言不具备扩展性,XML语言具备较好扩展性
B HTML侧重构造话描述内容,XML侧重体现信息形式
C HTML内容与显示为一体,XML则内容与显示相分离
D HTML语言浮现比XML语言早
7 一种表字段为varchar,如果建表时没有指定长度,则默认长度为 ( )
A 1
B 25
C 38
D 255
E 4000
F 建表时varchar类型字段必要指定长度
8 A 表字段a类型int中有100条记录,值分别为1至100,如下语句select a from
A where a between 1 and 50 or (a in (25,70,95) and a between 25 and 75),则如下哪个值在这个sql语句返回成果集中 ()
A 30
B 51
C 75
D 95
二、简述题
1、请回答如下几种名词意思
JVM:
JDK:
JRE:
J2SE:
J2EE:
JNDI:
GC:
2、
short s1 = 1;
s1 = s1 + 1;
和
short s1 = 1;
s1 += 1;
比较,哪个不能得到对的运营成果?为什么?
3、抽象类和接口区别?
4、两个servlet间对象传递办法
5、Servlet生命周期,越详细越好
6、java中实现多态机制是什么?
7、jsp有哪些内置对象和惯用办法?
8、简略回答如下问题
①数组有length()这个办法吗?
②与否可以继承String类?
③try {}里有一种return语句,那么紧跟在这个try后finally {}里code会不
会被执行,什么时候被执行,在return前还是后?
④swtich与否能作用在byte上,与否能作用在long上,与否能作用在
String上?
三、SQL题,如下是一种数据库建表语句,请按规定写出查询语句。
/*
dept:部门表
emp:职工表
Deptno:部门编号
建表:
dept:
deptno(primary key),dname,loc
emp:
empno(primary key),name,job,mgr,sal,deptno */
create table dept
(
deptno varchar(10) primary key,
dname varchar(10)
);
create table emp
(
empno varchar(10) primary key,
name varchar(10),
job varchar(10),
mgr varchar(10),
sal varchar(10),
deptno varchar(10) references dept(deptno) );
insert into dept values ('1','事业部');
insert into dept values ('2','销售部');
insert into dept values ('3','技术部');
insert into emp values ('01','jacky','clerk','tom','1000','1'); insert into emp values ('02','tom','clerk','','','1');
insert into emp values ('07','biddy','clerk','','','1');
insert into emp values ('03','jenny','sales','pretty','600','2'); insert into emp values ('04','pretty','sales','','800','2');
insert into emp values ('05','buddy','jishu','canndy','1000','3'); insert into emp values ('06','canndy','jishu','','1500','3'); select * from dept;
select * from emp;
1、列出emp表中各部门部门号,最高工资,最低工资
2、列出emp表中各部门job为'CLERK'员工最低工资,最高工资
3、对于emp中最低工资不大于部门,列出job为'CLERK'员工部门号,最低工资,最高工资
4、依照部门号由高而低,工资有低而高列出每个员工姓名,部门号,工资
5、对于emp中有管理者员工,列出姓名,管理者姓名(管理者外键为mgr)
6、对于工资高于本部门平均水平员工,列出部门号,姓名,工资,按部门号排序
三、程序阅读题
写出运营成果:
四、常用代码题
1、写出一种JavaScript表单验证,验证HTML表单中<input type=”text”name=”num”id=”num”/>输入项必要为数字。
2、请写出int型转Integer型,String型转int型,int型转String型原则写法。
int num = 5;
String str = “10”;
3、写出一段完整JDBC方式连接本机MySql数据库代码。
4、写出一种单例,即一种Singleton类,只能被实例化一次。
五,java算法应用题
1、将某网页评论提交给后台字符串str中,如果包具有“\”,“<”,“>”,“=”四种符
号,过滤掉以防止系统被执行恶意代码。
写出你java代码。
String str = “<<楼主说非常对!\\和谐社会,科学上网>=。
”;
2、从前,有一种数组,这个数组里面是1到10阿拉伯数字,但是是乱序。
你敢不敢写一种冒泡帮那个数组排序一下。