Java软件工程师测试题
- 格式:doc
- 大小:56.00 KB
- 文档页数:6
java工程师考试试题和答案****一、选择题(每题2分,共20分)1. Java中,下列哪个关键字用于声明一个类?A. classB. interfaceC. structD. enum答案:A2. 在Java中,下列哪个是正确的方法重载?A. 方法名相同,参数列表不同B. 方法名相同,返回类型不同C. 方法名不同,参数列表不同D. 方法名不同,返回类型不同答案:A3. 下列哪个选项不是Java的基本数据类型?A. intB. floatC. doubleD. String答案:D4. Java中,下列哪个关键字用于抛出异常?A. tryB. catchC. throwD. finally答案:C5. 在Java中,下列哪个是线程安全的单例模式实现?A. 懒汉式(线程不安全)B. 懒汉式(线程安全)C. 饿汉式D. 双重检查锁定答案:D6. 下列哪个选项是Java集合框架中的接口?A. ArrayListB. LinkedListC. HashSetD. Collection答案:D7. 在Java中,下列哪个关键字用于实现多态?B. abstractC. staticD. synchronized答案:B8. 下列哪个选项是Java中的泛型?A. 允许在编译时检查类型安全B. 允许在运行时检查类型安全C. 允许在编译时忽略类型检查D. 允许在运行时忽略类型检查答案:A9. 在Java中,下列哪个关键字用于声明一个接口?A. classB. interfaceD. enum答案:B10. 在Java中,下列哪个关键字用于声明一个枚举?A. classB. interfaceC. enumD. struct答案:C二、填空题(每题2分,共20分)1. Java中,`String`类是______的子类。
答案:Object2. Java中,`System.out.println()`方法属于______类。
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)笔试题请在90分钟以内做答答案请写在答题纸上一、选择题1、下面哪项是不合法的标识符:()A. $personsB. TwoUsersC. *pointD. _endlineE. final2、下列运算符合法的是()A.&& B.<> C.if D.:=3、下面描述中哪两项相等:()[选择两项]A.<%= YoshiBean.size%>B.<%= YoshiBean.getSize()%>C.<%= YoshiBean.getProperty(“size”)%>D.<jsp:getProperty id=”YoshiBean” param=”size”/>E.<jsp:getProperty name=”YoshiBean” param=”size”/>F.<jsp:getProperty id=”YoshiBean” property=”size”/>G.<jsp:getProperty name=”YoshiBean” property=”size”/>4、设float x = 1,y = 2,z = 3,则表达式 y+=z--/++x的值是:()A. 3.5B. 3C. 4D. 55、下面的哪些叙述为真:()A.equals()方法判定引用值是否指向同一对象B.==操作符判定两个不同的对象的内容和类型是否一致C.equal()方法只有在两个对象的内容一致时返回trueD.类File重写方法equals()在两个不同的对象的内容和类型一致时返回true6、如果一个对象仅仅声明实现了cloneable接口,但是不声明clone方法,外部能够调用其clone方法吗?()A. 能B. 不能C. 不确定7、下列说法错误的有()A.能被java.exe成功运行的java class文件必须有main()方法B. J2SDK就是Java APIC. Appletviewer.exe可利用jar选项运行.jar文件D.能被Appletviewer成功运行的java class文件必须有main()方法8、下列正确的有()A. call by value不会改变实际参数的数值B. call by reference能改变实际参数的参考地址C. call by reference不能改变实际参数的参考地址D. call by reference能改变实际参数的内容9、下列说法错误的有()A.数组是一种对象B.数组属于一种原生类C. int number=[]={31,23,33,43,35,63}D.数组的大小可以任意改变10、不能用来修饰interface的有()A.private B.public C.protected D.static 11、关于Float,下列说法正确的是A.Float是一个类B.Float在ng包中C.Float a=1.0是正确的赋值方法D.Float a= new Float(1.0)是正确的赋值方法12、下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法13、下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法14、下面说法哪些是正确的?A.Applet可以访问本地文件B.对static方法的调用不需要类实例C.socket类在ng中D.127.0.0.1地址代表本机15、类Test1、Test2定义如下:1.public class Test1 {2.public float aMethod(float a, float b) throws3.IOException { }4.}5.public class Test2 extends Test1 {6. //Line67.}将以下()方法插入行6是不合法的。
成都大学实训考题一、选择题:1、选择下面在java中命名合法的选项?(多选)A. IDoLikeTheLongNameClassB. $byteC. constD. _okE. 3_case2、以下二条语句返回值为true的有:A.“beijing”==“beijing”;B.“beijing”.equalsIgnoreCase(new String(“beijing”));3、下面的哪些声明是合法的?A.long 1 = 4990B.int i = 4LC.float f =1.1D.double d = 34.44、以下哪个方法用于定义线程的执行体?A.start()B.init()C.run()D.main()E.synchronized()5、给出下面代码:public class Person{static int arr[ ] =new int[10];public static void main(String a [ ]){System.out.println(arr[ 1 ]);}}哪个选项是正确的?A. 编译时将产生错误;B. 编译时正确,运行时将产生错误;C. 输出0;D. 输出空。
6、选出Java语言中的关键词(多选)A. NULLB. sizeofC. implementsD. extends7、字符(char)的整型表示范围为A. 0 . . . 32767 C. -256 . . . 255B. 0 . . . 65535 D. -32768 . . . 327678、选择Java语言中的基本数据类型(多选)A. byteB. IntegerC. StringD. charE. long9、下述代码的执行结果是:class Super {public int getLength() {return 4;}}public class Sub extends Super {public long getLength() {return 5;}public static void main (String[]args) {Super sooper = new Super ();Super sub = new Sub();System.out.println(sooper.getLength()+ “,” +sub.getLength() );}}A.4, 4B. 4, 5C. 5, 4D. 5, 5E. 代码不能被编译10、下述程序的执行结果为int index = 1;String [] test = new String[3];String foo = test[index];A. foo 的值为“”B. foo 的值为 nullC. 抛出一个异常D. 程序不能够被编译11、关于Java语言,下列描述正确的是(多选)A. switch 不能够作用在String类型上B. List, Set, Map都继承自Collection接口C. Java语言支持goto语句D. GC是垃圾收集器,程序员不用担心内存管理12、int[][] myArray=new int[][]{new int[]{5,6,2},new int[]{6,9,7,8,3},new int[]{3,2}};myArray[2][2]的值是()A. 9B. 2C. 6D. 越界13、三种字符串判空串方法:1: bool isEmpty = (str.length() == 0);2: bool isEmpty = (str == String.Empty);3: bool isEmpty = (str == "");哪种方法正确?A. 1B. 2C. 314、给出下面代码段(多选)switch (m){case 0 :System.out.println(“case 0”);case 1: System.out.println(“case 1”); break;case 2:default : System.out.println(default”);}下列m 的哪些值将引起“default ”的输出?A.0 B. 1 C. 2 D. 315、下列哪些说法是正确的?A. Java语言只允许单一继承B. Java语言只允许实现一个接口C. Java语言不允许同时继承一个类并实现一个接口D. Java语言的单一继承使得代码更加可靠.16、下列创建数组的方法正确的是()A.int two Dim[ ][ ] = new int[4][ ];B.int two Dim[ ][ ] = new int[ ][4];C.int two Dim[ ][ ] = new int[4][5];D.char a[ ] = {‘A’, ‘B’};E.char c[ ] = “ABC” ;二、编程题:1、请写出一种排序算法?2、金额转换,阿拉伯数字的金额转换成中国传统的形式,如:(¥1011)->(一千零一拾一元整)输出?(建议写代码,写思路也可以)三、简答题:1、简述面向对象,面向对象的特征?2、Overload和Override的区别。
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软件开发工程师笔试题(附答案)问题:中级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()会立即启动垃圾回收线程对当前程序进行垃圾回收。
软件工程师考试试题第一部分:单选题(共20题,每题2分,共计40分)1. 在软件工程中,以下哪个阶段是用于开发软件系统的基本概念和问题?A. 需求分析B. 设计C. 编码与调试D. 测试与维护2. 软件开发的过程模型主要包括哪些类型?A. 瀑布模型、敏捷模型、原型模型B. 增量模型、螺旋模型、瀑布模型C. 敏捷模型、原型模型、增量模型D. 螺旋模型、增量模型、敏捷模型3. 以下哪个层次不属于软件测试的分类?A. 单元测试B. 集成测试C. 回归测试D. 用户测试4. 对于大型软件项目,以下哪种开发方法最适用?A. 增量模型B. 瀑布模型C. 敏捷模型D. 原型模型5. 以下哪项是软件配置管理的主要目标之一?A. 控制软件工作进程B. 确保软件质量C. 追踪软件变更D. 优化软件性能6. 在软件开发过程中,以下哪个模型是基于风险管理的?A. 增量模型B. 螺旋模型C. 瀑布模型D. 原型模型7. 下面哪个软件开发方法适用于小规模、简单项目?A. 敏捷模型B. 瀑布模型C. 增量模型D. 原型模型8. 程序设计中,以下哪个目标是最重要的?A. 代码简洁易懂B. 高效执行C. 数据层的抽象D. 管理复杂度9. 软件开发过程中,以下哪个活动主要用于解决软件问题?A. 设计B. 测试C. 分析D. 编码10. 在软件测试中,以下哪项是黑盒测试的特点之一?A. 需要查看源代码B. 只测试功能C. 与用户需求无关D. 需要测试人员具备编程技能......第二部分:编程题(共2道题,每题30分,共计60分)代码实现题一:请编写一个Java程序,实现将一个字符串反转输出的功能。
例如,输入字符串为"Hello, World!",则输出结果为"!dlroW ,olleH"。
代码实现题二:请编写一个Python程序,实现统计一个文本文件中每个单词出现的次数,并按照出现次数从大到小的顺序进行排列输出。
1.1Java软件开发工程师入职测试题及参考解答(第1部分)1.1.1基础知识1、C++或Java中的异常处理机制的简单原理和应用。
当Java程序违反了Java的语义规则时,JAVA虚拟机就会将发生的错误表示为一个异常。
违反语义规则包括2种情况:(1)一种是Java类库内置的语义检查(RuntimeException或者UnCheck形式异常)理解:什么是RuntimeException或者UnCheck形式异常?例如数组下标越界,会引发IndexOutOfBoundsException;访问null的对象时会引发NullPointerException等。
(2)只需要捕获RuntimeException以外的异常(3)另一种情况就是Java允许程序员扩展这种语义检查程序员可以创建自己的异常,并自由选择在何时用throw关键字引发异常。
当然,所有的异常都是ng.Thowable(Exception)的子类。
2、Java的接口和C++的虚类的相同和不同处。
理解:什么是接口?为什么要提出接口?(描述抽象问题、达到多重继承的效果)接口如何定义?如何实现接口?接口和抽象类有什么不同?由于Java不支持多继承,而有可能某个类或对象要使用分别在几个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。
与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。
当一个类实现了接口以后,该类要实现接口里面所有的方法,并且接口里面的属性在默认状态下面都是public static、所有方法默认情况下是public形式的,一个类可以实现多个不同的接口。
3、垃圾回收的优点和原理、并考虑2种回收机制。
理解:什么是JVM?在Java平台中为什么要提出JVM(作用)?JVM中的垃圾回收机制?垃圾回收回收的时机?为什么要关闭数据库连接对象、文件流、socket流等对象?(1)Java语言中一个显著的特点就是引入了垃圾回收机制这使C++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。
Java初级软件⼯程师认证考试试卷1Java 初级软件⼯程师认证考试试卷笔试(A卷)考试时间150分钟总分 100分姓名_______________________⾝份证号_______________________考试结束后考卷必须收回,否则考试成绩⽆效尚学堂Java 初级软件⼯程师认证考试试卷⼀、填空题(共20个题⽬,总计20分)1. 安装JDK后,为了告诉计算机javac.exe和java.exe等执⾏⽂件的位置,需要配置的环境变量是______Path_______。
2. Java提供了三种注释类型,分别是单⾏注释,多⾏注释和_____⽂档注释________。
3. char 类型⽤来表⽰在Unicode编码表中的字符,长度是___2___个字节。
4. ___&&______是短路与运算符,如果左侧表达式的计算结果是false,右侧表达式将不再进⾏计算。
5. _____contiune________语句⽤在循环语句体中,⽤于终⽌某次循环过程,即跳过循环体中尚未执⾏的语句,接着进⾏下⼀次是否执⾏循环的判定。
6. 基本数据类型的类型转换中,要将double类型的常量3.14159赋给为整数类型变量n的语句是________int n = int(3.14159);_____________。
7. 执⾏Person p = new Person();语句后,将在___堆内存________中给Person对象分配空间,并在栈内存中给引⽤变量p分配空间,存放Person对象的引⽤。
8. 使⽤static修饰的变量称为静态变量,静态变量可以有两种访问⽅式,分别是类名.静态变量名和_______对象名.静态变量名________________。
9. 在⼀个类⽂件中的关键字package,import,class出现的可能顺序是________________package,import,class______________。
JAVA测试题(三套含答案)<测试一>1.在单一文件中import、class和package的正确出现顺序是:AA.package, import, classB.class, import, packageC.import, package, classD.package, class, import2.public static void main方法的参数描述是:A,DA.String args[]B.Strings args[]C.String argsD.String []args3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,DA.float f=1.3;B.char c="a";C.byte b=257;D.boolean b=null;E.int i=10;4.编译,运行下列代码后的结果是:Dpublic class Test {public static void main (String args []) {int age;age = age + 1;System.out.println("The age is " + age);}}A.编译,运行后没有输出B.编译,运行后输出:The age is 1C.能通过编译,但运行时产生错误D.不能通过编译4.下面那些关键字不是JAVA的关键字BA ifB thenC gotoD whileE case5.下面那些不是合法的变量定义:A,FA.2variableB.variable2C. _whatavariableD. _3_E. $anothervarF. #myvar6.内部数据类型byte的取值范围是BA.0 - 65, 535B.(–128) – 127C.(–32,768) – 32,767D.(–256) – 2557.下列哪些表达式返回true ABA."john" == "john"B."john".equals("john")C."john" = "john"D."john".equals(new Button("john")) 8.声明公用的abstract 方法的正确格式是A A.public abstract void add();B.public abstract void add() {}C.public abstract add();D.public virtual add();9.下面的代码能打印出的结果为:Cint 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.oneB.one, defaultC.one, two, defaultD.default10.下面的代码能打印出的结果为:B int i=9;switch (i) {default:System.out.println("default"); System.out.println("zero");break;case 1:System.out.println("one");case 2:System.out.println("two");}A.defaultB.default, zeroC.error default clause not definedD.no output displayed11.下面的代码那个能正常的编译通过:B,CAint i=0;if(i) {System.out.println("Hello");}Bboolean b=true;boolean b2=true;if(b==b2) {System.out.println("So true");}C.int i=1;int j=2;if(i==1|| j==2)System.out.println("OK");Dint i=1;int j=2;if(i==1 &| j==2)System.out.println("OK");12.Hello.txt不与Mine.java在同一个目录下,如果你试图编译,运行下面的代码,那么会是什么结果?Cimport java.io.*;public class Mine {public static void main(String argv[]){Mine m=new Mine();System.out.println(m.amethod());}public int amethod() {FileInputStream dis=new FileInputStream("Hello.txt"); }catch (FileNotFoundException fne) {System.out.println("No such file found");return -1;}catch(IOException ioe) {} finally{System.out.println("Doing finally");}return 0;}}13.当你试图准备编译,运行下面代码时会发生:CA.编译和运行很正常B.编译时错误C.运行时错误class Base {}class Sub extends Base {}class Sub2 extends Base {}public class CEx{public static void main(String argv[]){Base b=new Base();Sub s=(Sub) b;}}14.当你试图准备编译,运行下面代码时会发生:Dpublic class Tux extends Thread{static String sName = "vandeleur";public static void main(String argv[]){Tux t = new Tux();t.piggy(sName);System.out.println(sName);}public void piggy(String sName){sName = sName + " wiggy";start();}public void run(){for(int i=0;i < 4; i++){sName = sName + " " + i;}}}A.编译时错误B.编译成功,并打印出"vandeleur wiggy"C.编译成功,并打印出" vandeleur wiggy 0 1 2 3"D.编译成功,并打印出" vandelur"15.在什么情况下类获得默认的构造方法:BA.类被定义时B.类中没有定义任何构造方法时C.在类中至少定义了一个构造方法时16.listener(监听器)方法的正确的访问修饰符是什么?AA.publicB.staticC.privateD.protectedE.Default(即默认为空)17. 假定有一个包含引起异常(不是一个RuntimeException)的代码的方法,用什么方式告诉方法的调用者要捕获该异常:BA.throw ExceptionB.throws ExceptionC.new ExceptionD.不用特别指定18.下面的代码能打印出的结果是:A,Bpublic class MyFor{public static void main(String argv[]){int i;int j;outer:for (i=1;i <3;i++)inner:for(j=1; j<3; j++) {if (j==2)continue outer;System.out.println("Value for i=" + i + " Value for j=" +j);}}}A.Value for i=1 value for j=1B. Value for i=2 value for j=1C. Value for i=2 value for j=2D. Value for i=3 value for j=119.那个代码能够添加在//mothod here地方,并能正确执行?B,Cclass Base{public void amethod(int i) { }}public class Scope extends Base{public static void main(String argv[]){}//Method Here}A. void amethod(int i) throws Exception {}B. void amethod(long i)throws Exception {}C. void amethod(long i){}D. public void amethod(int i) throws Exception {} 20.运行下面代码能够得出的结果?BString s=new String("Bicycle");int iBegin=1;char iEnd=3;System.out.println(s.substring(iBegin,iEnd));A.BicB. icC. icyD. error: no method matching substring(int,char) 21.下面定义的变量能执行那些操作?AString s1=new String("Hello")String s2=new String("there");String s3=new String();A.s3=s1 + s2;B.s3=s1-s2;C.s3=s1 & s2;E.s3=s1 && s222. System.out.println(4 | 3);能打印出什么结果?DA 6B 0C 1D 723.传递4,0来运行下列代码中的方法divide(int a, int b),结果是:A public void divide(int a, int b) {try {int c = a / b;} catch (Exception e) {System.out.print("Exception ");} finally {System.out.println("Finally");}A.打印输出: Exception FinallyB.打印输出: FinallyC.打印输出: ExceptionD.没有任何输出24.对public void add(in t a) {…}方法的重写方法:AA.必须返回voidB.必须返回intC.可以返回任何需要的类型25. 对public void add(int a) {…}方法的重载方法应返回:CA.voidB.intC.任何类型26. 下列类分别在不同的文件中定义:Cclass Vehicle {public void drive() {System.out.println("Vehicle: drive");}}class Car extends Vehicle {public void drive() {System.out.println("Car: drive");}}public class Test {public static void main (String args []) {Vehicle v;Car c;v = new Vehicle();c = new Car();v.drive();c.drive();v = c;v.drive();}}编译和执行类Test后,结果是:A.在语句v= c;处产生编译时错误B.在语句v= c;处产生运行时错误C.输出:Vehicle: driveCar: driveCar: driveD.输出:Vehicle: driveCar: driveVehicle: drive27. 在子类构造方法内的什么位置可以对超类的构造方法(super())进行调用:BA.子类构造方法的任何地方B.子类构造方法的第一条语句处C.子类构造方法的最后一条语句处D.不能对超类的构造方法进行调用28. 下列代码中有明显的语法错误的语句是:C1.public class Test {2.public static void main (String args []) {3.Employee e = new Employee("Bob", 48);4. e.calculatePay();5.System.out.println(e.printDetails());6. e = Null;7. e = new Employee("Denise", 36);8. e.calculatePay();9.System.out.println(e.printDetails());10.}}A.Line 10B.Line 11C.Line 6D.Line 829. 选择可以建立线程的接口:AA.RunnableB.RunC.少数用于管理的系统部件D.ThreadE.Executable30. 选择正确生成text field的代码,此text field最多能够显示10个字符(假定其字体有固定大小)并最初显示“hello”串:AA.new TextField("hello", 10) ;B.new TextField(10,"hello");C.new TextField("hello",max,10);D.new TextField("hello",10,max);31. 选择定义在Graphics类中的方法:A,CA.drawLine(int, int, int, int) ;B.drawImage(Image, int, int, ImageObserver) ;C.drawString(String, int, int) ;D.add(Component);E.setVisible(boolean);F.setLayout(Object);32. 从下面的布局管理器中选择按行放置控件、从左到右、从上到下,当一行装满时开始新的一行的布局管理器:BA.CardLayoutB.FlowLayoutC.BorderLayoutD.GridLayout33. 选择可以替换一个Container对象布局的方法:AA.setLayout(aLayoutManager);B.addLayout(aLayoutManager);/doc/137072775.html,yout(aLayoutManage r);D.setLayoutManager(aLayoutManager);34. 一个类Example的main()方法的参数是args,类被如下调用执行:java Example catmain方法中访问args[0]的输出是什么?AA.catB.javaC.ExampleD.抛出一个NullPointerException异常E.抛出一个ArrayIndexOutOfBoundsException异常35.下面的代码编译,运行后得出的结果:Dpublic class Conv{public static void main(String argv[]){Conv c=new Conv();String s=new String("ello");c.amethod(s);}public void amethod(String s){char c='H';c+=s;System.out.println(c);}}A.编译成功,打印出"Hello"B. 编译成功,打印出"ello"C. 编译成功,打印出elloHD. 编译错误36.执行后打印的结果为:Cpublic class Oct{public static void main(String argv[]){ Oct o = new Oct(); o.amethod();}public void amethod(){int oi= 012;System.out.println(oi);}}A.12B.012C.10D.10.037.编译,执行下面的代码会出现的结果:Apublic class Ref{public static void main(String argv[]){ Ref r = new Ref();r.amethod(r);}public void amethod(Ref r){int i=99;multi(r);System.out.println(i);}public void multi(Ref r){r.i = r.i*2;}}A. 一个编译时错误B. 99C. 198D. 一个运行时错误.38.现在你存储一个唯一的整型序列,那么你需要哪个容器接口?AA.SetB.ListC.MapD.Vector39.给出下列代码,请选择2个正确输出?D,Epublic class Example{public static void main(String args[]){int i=0;do{System.out.println(“Doing it for i is”+i);} while (--i>0);System.out.println(“Finished”);}}A.Doing it for i is 3B.Doing it for i is 2C.Doing it for i is 1D.Doing it for i is 0E.Finished40. System.out.println(Math.floor(-2.1));打印的结果为:DA -2B 2.0C -3D -3.0<测试二>Java程序员笔试题一、单项选择题(共10题,每题2分,共20分)1.下列说法哪一个是正确的。
Java工程师笔试题(选择题版)1. Java工程师笔试题(选择题版)1. 请在下列的普通变量名中,选择一个最佳的变量名(): [单选题] *A. aaaaB. 123C. packageD. billList(正确答案)2. 下面程序的输出结果是():[单选题] *A. 无法通过编译B. B 00nullC. B null0s(正确答案)D. null0s3. 下面哪些是Thread类的方法() *A. start()(正确答案)B. run()(正确答案)C. exit()D. getPriority()(正确答案)4. 下列说法正确的有() [单选题] *A. class中的constructor不可省略B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行(正确答案)D. 一个class只能定义一个constructor5. 给定一个数组dataArray,下列哪个表达式的值与数组下标量总数相等?( ) [单选题] *A. dataArray.length()B. dataArray.length(正确答案)C. dataArray.length - 1D. dataArray.length() – 16. 下面代码段的运行结果是:()[单选题] *B. 运行时出现IndexOutOfBoundsException(正确答案)C. [2,5,3,1]D. [5,3,2,1]E. [1,2,3,5]7. 下面的代码段运行结果是:() [单选题] *A. In Parent Constructor Parent Static Block In Parent Constructor: 34 In DemoClass Constructor Just One LineB. Parent Static Block In Parent Constructor: 34 In DemoClass Constructor Just One Line(正确答案)C. In DemoClass Constructor In Parent Constructor: 34 Just One LineD. Parent Static Block In DemoClass Constructor Just One Line8. 8. 下列代码输出结果是()[单选题] *A. while循环执行10次B. 死循环(正确答案)C. 循环一次都不执行D. 循环执行一次9. Java接口的修饰符可以为() *A. privateC. final(正确答案)D. abstract(正确答案)10. 下列关于关键字的使用说法错误的是:() [单选题] *A. abstract不能与final并列修饰同一个类B. abstract类中可以有private的成员C. abstract方法必须在abstract类中D. static方法能处理非static的属性(正确答案)11. 以下哪些算法的空间复杂度为O(1):() *A. 快速排序B. 选择排序(正确答案)C. 基数排序D. 堆排序(正确答案)12. 在Java多线程中,请用下面哪种方式不会使线程进入阻塞状态:() [单选题] *A. sleep()B. suspend()C. wait()D. yield()(正确答案)13. 在使用ThreadPoolExecutor时,需要设定corePoolSize。
Java工程师认证2023考卷一、选择题(每题5分,共50分)A. JVMB. JDKC. JRED. GC2. 在Java中,下列哪个关键字可以用来定义接口?()A. interfaceB. classC. extendsD. implementsA. reverse()B. reverseOrder()C. reverseString()D. reverseOrderString()A. Date.now()B. Calendar.getInstance()C. LocalDate.now()D. LocalDateTime.now()A. constB. staticC. finalD. defineA. equals()B. ==A. ThreadB. RunnableC. ProcessD. ExecutorA. extendsB. implementsC. interfaceD. classA. abstractB. interfaceC. extendsD. classA. length()B. size()C. lengthD. getSize()二、填空题(每题5分,共25分)1. Java中的基本数据类型包括______、______、______、______、______、______、______和______。
2. 在Java中,______关键字用于定义一个类的成员变量或方法为静态的。
3. Java中的集合框架包括______、______、______、______等接口。
4. Java中的异常处理包括______和______两个关键字。
5. 在Java中,______类用于实现文件的读写操作。
三、简答题(每题10分,共30分)1. 请简要说明Java中的封装、继承和多态的概念。
2. 请简述Java中的垃圾收集器的作用及工作原理。
3. 请举例说明如何在Java中使用Lambda表达式。
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软件工程师企业测评测试题一、选择题:(每题2分)1.名为HelloWorld.java的Java应用程序如下:(B)将这个程序放在C:\Test下,然后在命令行窗口中,进入到C:\Test路径执行如下指令:javac helloworld.java将得到什么结果?A.编译出错。
B.编译成功,生成名为HelloWorld.class的文件。
C.编译成功,生成名为helloworld.class的文件。
D.找不到名为helloworld.java的文件。
2.下面的程序名为Student.java:B使用如下指令编译:javac Student.java。
将会得到什么结果?A.将会顺利通过编译,并将产生一个Student.class的类文件。
B.编译时在//3处出错。
C.编译时在//2处出错。
D.编译时在//1处出错。
3.关于下面的类描述中正确的是:CA.编译出错B.编译通过,运行出错C.编译通过,运行时输出“I am an int”????D.编译通过,运行时输出“I am a string”4.关于下述程序:C描述正确的是?A.编译通过,运行时打印出5。
B.编译通过,运行时打印出23。
C.编译不通过,在//2处有错误,因为此处f必须是一个int类型的变量。
?D.编译不通过,在//1处有错误,不能这样定义变量5.关于下述程序:描述正确的是?编译通过,运行17.0/0=5.666? 17/0=5A.编译出错B.编译通过,运行时//1、//2处均出现异常C.编译通过,运行时//1处得到一个无穷大值,//2处将出现异常D.编译通过,运行时//1处出现异常,//2处将得到一个无穷大值6.关于下述程序:D描述正确的是?A.编译出错。
B.编译通过,执行的时候在//2处报错。
C.编译通过,执行时在//3处打印出3.234,在//4处打印出3.234。
D.编译通过,执行时在//3处打印出1.2342.0,在//4处打印出3.234。
Java软件工程师试题
考试时间:120分钟总分:100分成绩:_______
一、选择题(每题3分,共45分)
1、下列哪项不是Java 5.0的新特性?( )
(A) 泛型(B) 注解(Annotation)(C) 自动装箱/拆箱(D) NIO
2、表达式10 / 4 的值是:( )
(A) 3 (B) 2 (C) 2.5 (D) 3.0
3、MyClass类定义如下:
public class MyClass {
private int field;
public int getField() {
return field;
}
public int getVariable() {
int localVariable;
return localVariable;
}
}
请判断:( )
(A) getField()方法出错(B) getVariable ()方法出错
(C) 两个方法都出错(D) 两个方法都正常
4、MyClass类定义如下:
public class MyClass {
private int i = 5;
private static int j = 10;
public int getStatic() {
return j;
}
public static int getDynamic() {
return i;
}
}
请判断:( )
(A) getStatic ()方法出错(B) getDynamic ()方法出错
(C) 两个方法都出错(D) 两个方法都正常
5、两个类分别定义如下:
public class ParentClass {
private int x= 3;
public int getX() {
return x;
}
public int getX2() {
return x;
}
}
public class SubClass extends ParentClass {
private int x = 5;
public int getX() {
return x;
}
}
SubClass的实例的getX()方法和getX2()方法的返回值分别为:( )
(A) 5, 5 (B) 3, 3 (C) 5, 3 (D) 3, 5
6、两个类的定义如下:
public class ParentClass {
private int x= 3;
public ParentClass() {
}
public ParentClass(int x) {
this.x = x;
}
public int getX() {
return x;
}
}
public class SubClass extends ParentClass {
public static void main() {
ParentClass obj = new SubClass(5);
System.out.println(obj.getX());
}
}
SubClass类的main方法的打印输出结果是:( )
(A) 3 (B) 5 (C) 0 (D) 程序出错
7、一个Java源文件中可以包含多少个public类定义?( )
(A) 0或1个(B) 多个(C) 一个且只有一个(D) 无限制
8、当创建子类的实例时,将:( )
(A) 调用父类的构造函数(B) 不调用父类的构造函数
(C) 不能确定
9、如果在类的一个方法中没有使用任何权限修饰符,这个方法将具有哪一级访问权限?
( )
(A) public (B) private (C) protected (D) 包访问权限
10、下列说法哪种是正确的?( )
(A) 类可以继承多个超类
(B) 类可以实现多个接口
(C) 类既可以继承多个超类也可以实现多个接口
(D) 类只能继承一个超类和实现一个接口
11、以下哪些不是EJB的内容:
(A) Session Bean (B) Entity Bean (C)Message Driven Bean (D) Java Bean
12、下列哪个框架不是web框架?( )
(A) Struts (B) Hibernate (C) SpringMVC (D) JSF
13、下列哪种技术与AJAX无关?( )
(A) JavaScript (B) XML (C) DOM (D) JSP
14、下列哪种技术不是服务器端技术?( )
(A) Servlet (B) JSP (C) CSS (D) Javabean
15、下列哪种软件不能作为web容器(Servlet容器)?( )
(A) JBoss (B) Tomcat (C) WebLogic (D) Spring
二、问答题(共55分)
1、请说明方法重载(overloading)和方法覆盖(override)的区别。
(5分)
2、请说明接口、抽象类和具体类的区别。
(5分)
3、实现多线程有哪些方法?请说明。
(5分)
4、请写出你对于MVC设计模式的理解。
(5分)
5、你知道有哪些流行的Web框架?请分析一下它们的优缺点。
(5分)
有一个成绩表如下:
请根据以上表结构,编写sql语句完成以下6~10题要求
6、描述该表设计有什么缺陷:(7分)
7、列出各科成绩前三名的记录(不考虑成绩并列状况),格式如下:(7分)
学生ID,学生姓名,课程ID,课程名称,成绩,教师ID,教师姓名
8、统计列出各科成绩各分数段的人数,格式如下:(8分)
课程ID、课程名称、[100-86]、[85-71]、[70-60]、[<60]
9、按照平均成绩从高到低顺序,列出所有学生的四门(数学、语文、英语、政治)课程成
绩,格式如下:学生ID、学生姓名、数学、语文、英语、政治(8分)
附加题:(10分)
写出冒泡排序的程序:。