软件开发工程师(JAVA)笔试题A(共10篇)
篇1:软件开发工程师(JAVA)笔试题A
Java软件开发工程师笔试题
一、选择题(25 x 2’ = 50’)
1、一个Java程序运行从上到下的环境次序是()
A. 操作系统、Java程序、JRE/JVM、硬件 B. JRE/JVM、Java程序、硬件、操作系统 C. Java程序、JRE/JVM、操作系统、硬件 D. Java程序、操作系统、JRE/JVM、硬件
2、下面代码中的第2行可以插入一行代码()保证程序编译通过。
1、public interface A{ 2、3、} A.void method();B.public void method();C.static void method();D.private void method();E.protected void method();
3、关于异常下列描述中,错误的是()
A.异常机制可以用于流程控制
B.finally代码段在发生异常时不一定必须执行
C.在catch代码段中可以使用return语句来返回到异常抛出点
D.可以把catch到的异常对象再次抛出,使上层try—catch结构继续处理该异常事件
4、关于被私有访问控制符private修饰的成员变量,以下说法正确的是()
A. 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B. 可以被两种类访问和引用:该类本身、该类的所有子类 C. 只能被该类自身所访问和修改 D. 只能被同一个包中的类访问
5、某类Example的main()方法参数为args,当命令行中输入Java Example cat时,args[0]的值为()。
A. cat
B. Java
C. example
D. null
6、下面关于Thread类提供的现成控制方法的说法中,错误的是()
A. 在线程A中执行现成B的join方法,则线程A等待直到线程B执行完成。B. 线程A通过调用iterrupt方法来中断其阻塞状态
C. 若线程A调用方法isAlive返回值为true,则说明A正在执行中 D. currentThread方法返回当前线程的引用
7、类Test1定义如下:
1.public class Test1{ 2.
public float aMethod(float a,float b){ }
1/10
3.4.}
将以下哪种方法插入行3是不合法的。()
A. public float aMethod(float a,float b,float c){ } B. public float aMethod(float c,float d){ } C. public int aMethod(int a,int b){ } D. private float aMethod(int a,int b,int c){ }
8、下面程序的输出结果是()private static void foo(){ try { System.out.println(“try”);foo();} catch(Throwable e){ System.out.println(“catch”);foo();} finally { System.out.println(“finally”);foo();} }
public static void main(String[] args){ foo();} A.执行一段时间后报栈溢出。B.会一直输出“try”。
C.会一直输出“try”和“finally”。D.会一直输出“try”、“catch”和“finally”
9、下面的哪些程序片断可能导致错误?()A.String s = “Gone with the wind”;String t = “ good ”;String k = s + t;
B.String s = “Gone with the wind”;String t;t = s[3] + “one”;
C.String s = “Gone with the wind”;String standard = s.toUpperCase();
D.String s = “home directory”;String t = s-“directory”;
10、已知如下代码:
2/10
1: class Example{ 2: String str;3: public Example(){ 4: 5: } 6: public Example(String s){ 7: 8: } 9:} 10: class Demo extends Example{ 11: } 12: public class Test{ 13: public void f(){ 14: 15: 16: } } 哪句语句会导致错误?()A、line 3 B、line 6 C、line 10 D、line 14 E、line 15
11、下面的代码中第4行创建的对象在什么时候符合垃圾回收的条件()
1、class Bar { }
2、class Test {
3、Bar doBar(){
4、Bar b = new Bar();
5、return b;
6、}
7、public static void main(String args[]){
8、Test t = new Test();
9、Bar newBar = t.doBar();10、11、12、newBar = new Bar();} } Example ex = new Example(“Good”);Demo d = new Demo(“Good”);str=s;str= “example”;A.程序运行第9行之后。B.程序运行第10行之后。C.doBar方法运行结束之后。D.main方法运行结束之后。
12、下列关于for循环和while循环的说法中哪个是正确的?()
A. while循环能实现的操作,for循环也都能实现
B. while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果
3/10
C. 两种循环任何时候都可替换
D. 两种循环结构中都必须有循环体,循环体不能为空
13、下述说法中,错误的是()A.Java中,方法的重载是指多个方法可以共享同一个名字 B.Java中,用abstract修饰的类称为抽象类,它不能实例化 C.Java中,接口不包含成员变量和方法实现 D.Java中,构造方法可以有返回值
14、下面哪些是正确的()
11.class ClassA {}
22.ClassB p1 = new ClassB();23.ClassC p2 = new ClassC();24.ClassA p3 = new ClassB();25.ClassA p4 = new ClassC();12.class ClassB extends ClassA {} 13.class ClassC extends ClassA {} and:
21.ClassA p0 = new ClassA();A.p0 = p1;
15、以下代码片段,正确的结果是:()
11.classA {
17.throw new IOException();
18.} }
19.public static void main(String[] args){
20.try { new B().process();} 21.catch(IOException e){
22.System.out.println(”Exception”);} } 12.public void process(){ System.out.print(”A,”);} } 13.class B extends A { 15.super.process();A.Exception B.A,B,Exception C.Compilation fails because of an error in line 20.D.Compilation fails because of an error in line 14.E.A NullPointerException is thrown at runtime.16、用直接插入排序方法对下面四个序列进行排序(由小到大),元素比较次数最少的是()。
A. 94,32,40,90,80,46,21,69 B. 32,40,21,46,69,94,90,80 C. 21,32,46,40,80,69,90,94 D. 90,69,80,46,21,32,94,40
17、设栈最大长度为3,入栈顺序为1,2,3,4,5,6,则不可能的出栈序列是()
A.1,2,3,4,5,6 B.2,1,3,4,5,6 C.3,4,2,1,5,6 D.4,3,2,1,5,6
18、设有98个已排序列元素,采用二分法查找时,最大比较次数是()
A.49 B.15 C.20 D.7
4/10
14.public void process()throws IOException { 16.System.out.print(”B,”);B.p1 =p2;
C.p2 = p4;
F.p2 =(ClassC)p4;D.p2 =(ClassC)p1;E.p1 =(ClassB)p3;
19、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()
A.9 B.11 C.15 D.不确定
20、以下与数据的存储结构无关的术语是()。
A.循环队列 B.链表 C.哈希表 D.栈
21、设数组A[10„100,20„100]以行优先的方式顺序存储,每个元素占4个字节,且已知A[10,20]的地址为 1000,则A[50,90]的地址是()
A.13240 B.14250 C.24220 D.14240
22、链表不具有的特点是()
A.插入、删除不需要移动元素 B.可随机访问任一元素 C.不必事先估计存储空间 D.所需空间与线性长度成正比
23、下面关于线性表的叙述中,错误的是哪一个?()
A.线性表采用顺序存储,必须占用一片连续的存储单元。B.线性表采用顺序存储,便于进行插入和删除操作。C.线性表采用链接存储,不必占用一片连续的存储单元。D.线性表采用链接存储,便于插入和删除操作。
24、若一个栈的输入序列为1,2,3,„,n,输出序列的第一个元素是i,则第j个输出元素是()。A.i-j-1 B.i-j C.j-i+1 D.不确定的
25、下列说法不正确的是()。
A.图的遍历是从给定的源点出发每一个顶点仅被访问一次 B.图的深度遍历不适用于有向图
C.遍历的基本算法有两种:深度遍历和广度遍历 D.图的深度遍历是一个递归过程
二、程序改错(5 * 2’ = 10’)1.----public class Unbelievable { static Integer i;public static void main(String[] args){
} } if(i == 42)System.out.println(“Unbelievable”);2.——————————————————————————————————
class Animal {
public String noise(){
5/10
龙通科技有限公司笔试题
} class Dog extends Animal {
} class Cat extends Animal {
} public class Test {
} public static void main(String[] args){
} Animal animal = new Dog();Cat cat =(Cat)animal;cat.noise();public String noise(){ } return “meow”;public String noise(){ } return “bark”;} return “peep”;3.——————————————————————————————————————
abstract class Something { } private abstract String doSomething();4.——————————————————————————————————————
public class Something {
} class Other { } public int i;public static void main(String[] args){
} public void addOne(final Other o){ } o.i++;Other o = new Other();new Something().addOne(o);5.——————————————————————————————————————
class Something {
final int i;public void doSomething(){ System.out.println(“i = ” + i);6
龙通科技有限公司笔试题
} }
三、程序阅读题(每空2’,共 40’)
1、阅读以下java代码,写出运行结果
class StaticTest {
}
2、编写将一维数组a[]中互不相同的数按从小到大顺序重新存于一维数组a[]的程序。
class A{ public static void main(String[] args){
} for(j=0;j } System.out.prinln(a[j]);int a[]={15,7,15,6,4,3,4,6,7};int i,j,k,low,high,mid,t;for(i=k=1;i=a[i])____________;else low=mid+1;} if(____________|| a[low]!=a[i]){ t=a[i];for(j=k-1;__________;j--)a[j+1]=a[j];___________;k++;} static int x=1;int y;StaticTest(){ } public static void main(String args[ ]){ StaticTest st=new StaticTest();System.out.println(“x=” + x);System.out.println(“st.y=” + st.y);st=new StaticTest();System.out.println(“st.y=” + st.y); } static { x++;} y++; 龙通科技有限公司笔试题 } 3、请用JAVA编写如下程序:此程序处理一个由0和非0数字成员组成的数组(长度自定),例如0 0 1 2 0 1 0 0 0 1 0 0 0 0 0 2 0 7 8 9 0 0 1 2 3 4,把数组中所有连续两个以上的0去掉,将结果存入一个新数组。如上例处理后结果为,1 2 0 1 1 2 0 7 8 9 1 2 3 4。public static void main(String[] args){ int[] srcArray = {0,0,1,2,0,1,0,0,0,1,0,0,0,0,0,2,0,7,8,9,0,0,1,2,3,4};int[] destArray = new int[50];int i=0,j=0,count=0;for(i=0;i } } for(i=0;i public static void main(String[] args){ } public static int Keeper(int peo, int n){ int k = 0;int peo;System.out.println(“请输入人数:”);Scanner inp = new Scanner(System.in);peo = inp.nextInt();int k = Keeper(peo, 3);System.out.println(“最后留下的是 ” + k + “ 号!”); 4、有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,再从他的下一 8 龙通科技有限公司笔试题 int[] array = new int[peo];for(int i = 1;i < peo;i++){ } for(k = 0;k < peo;k++){ } return k + 1;if(array[k] == 0){ } 4 ; ○int j = 1;while(j <= n){ } if(○1){ } if(j == n){ } j++;3 ; ○ ; ○j--; } } 5、在一个n×n的棋盘上,放置n个不能互相捕捉的国际象棋“皇后”的所有布局。以下是n皇后的算法,请完成填空部分: public class Queen { Queen(int d){ } // 放置皇后的方法 public void place(int row){ int i = 0;if(row == n){ 1 ; ○n = d;queenPos = new int[d];private int n;private int[] queenPos;private double num = 0;// 记录共有多少种摆法 } else { 9 龙通科技有限公司笔试题 } // 判断布局是否合法 private boolean legality(int list){ } // 测试方法 public static void main(String[] args){ }} System.out.println(“输入个数n:”);Scanner in = new Scanner(System.in);int n = in.nextInt();try { } Queen q = new Queen(n);q.place(0);System.out.println(n + “*” + n + “时,” + “共有” + q.num + “种可能摆法。”);System.out.println(“OK!”);e.printStackTrace();if(list == 0) } return true;return true;if(queenPos[i] == queenPos[list])3 ; ○for(int i = 0;i < list;i++){ } for(i = 0;i < n;i++){ } queenPos[row] = i;if(legality(row)); ○if(○4)return false;} catch(Exception e){ 10 一、单项选择题(每题2分,共计30分) 1.下列哪一种叙述是正确的(A).abstract修饰符可修饰字段、方法和类 (B).抽象方法的body部分必须用一对大括号{}包住 (C).声明抽象方法,大括号可有可无 (D).声明抽象方法不可写出大括号 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); } } 输出结果是什么? (A).0 (B).1 (C).2 (D).编译失败 3.以下代码的输出结果是()? public class Test1{ public static void main(String[] args){int i = 42; String s =(i < 40)? “life” :(i > 50)? “universe” : “everything”;System.out.println(s); } } (A).life (B).universe (C).everything (D).以上答案都不对。 4.当你编译和运行下面的代码时,会出现下面选项中的哪种情况? public class Test{ static boolean paddy; public static void main(String[] args){ System.out.println(paddy); } } (A).编译时出错 (B).编译通过并输出结果false (C).编译通过并输出结果true (D).编译通过并输出结果null 5.如下代码: class Base { public Base(){ System.out.print(“Base”); } } public class Alpha extends Base { public static void main(String[] args){ new Alpha(); new Base(); } } 结果是什么? (A).Base (B).BaseBase (C).编译失败.(D).代码运行但没有输出.(E).运行时抛出异常 6.如下代码: public class Foo { public static void main(String[] args){ try { return; } finally { System.out.println(“Finally”); } } } 输出结果是什么? (A).Finally (B).编译失败 (C).代码正常运行但没有任何输出.(D).运行时抛出异常 7.下列关于构造方法的叙述中,错误的是() (A).Java语言规定构造方法名与类名必须相同 (B).Java语言规定构造方法没有返回值,但不用vold声明 (C).Java语言规定构造方法不可以重载 (D).Java语言规定构造方法只能通过new自动调用 8.构造函数何时被调用() (A).类定义时 (B).创建对象时 (C).调用对象方法时 (D).使用对象的变量时 9.JDBC中,用于表示数据库连接的对象是: (A).Statement (B).Connection (C).DriverManager (D).PreparedStatement 10.需要读一个比较大的文本文件,这个文件里有很多字节数据,那么下列最合适读这 类文件的选项是哪一个? (A).new FileInputStream(“myfile.txt”); (B).new InputStreamReader(new FileInputStream(“myfile.txt”)); (C).new BufferedReader(new InputStreamReader(new FileInputStream(“myfile.txt”))); (D).RandomAccessFile raf = new RandomAccessFile(“myfile.txt”, “+rw”); 11.在List,Map,Set等接口中,不能包含重复元素的接口是哪一个? (A).List (B).Map (C).Set (D).都不是 12.有如下程序: 1.classTest4{ 2.public static void main(String []args){ 3.boolean x=; 4.boolean y=false; 5.short z=42; 6.7.if((z++==42)&&(y=true))z++;8.if((x=false)||(++z==45))z++;9. 10.System.out.println(“z=”+z);11.} 12.} 结果为: (A).44 (B).45 (C).46 (D).编译出错 13.有如下程序 11.public class Test { 12.public static void main(String [] args){ 13.int x =5; 14.boolean b1 = true; 15.boolean b2 = false; 16.17.if((x==4)&&!b2) 18.System.out.print(“l ”); 19.System.out.print(“2 ”); 20.if((b2 = true)&& b1) 21.System.out.print(“3”); 22.} 23.} 运行的结果为: (A).2 (B).3 (C).1 2 (D).2 3 (E).1 2 3 (F).编译错误 (G).抛出一个运行时异常 14.以下语句有语法错的是: (A).int x=1;y=2;z=3 (B).for(int x=10,y=0;x>0;x++); (C).while(x>5); (D).for(;;); 15.下面有关类 Demo 的描述正确的有() public class Demo extends Base{ private int count; public Demo(){ System.out.println(“A Demo object has been created”); } protected void assone(){ count++; } } (A).当创建一个 Demo 类的实例对象时,count 的值为 0 (B).当创建一个 Demo 类的实例对象时,count 的值是不确定的(C).Base 类型的对象中可以包含改变 count 值的方法 (D).Demo 的子类对象可以访问 count 二、1.2.3.4.5.问答题(每题5分,共计25分)String是最基本的数据类型吗? String 和StringBuffer的区别? Java中的“==”和equals()方法有什么区别? 描述一下JSP中转发和重定向的区别? 请说出作用域public,private,protected,以及不写时的区别? List, Set, Map是否继承自Collection接口?分别说出它们的特点? 三、编程题(每题15分,共计45分) 1.已知有一个数列:f(0)= 1,f(1)= 4,f(n+2)=2*f(n+1)+ f(n),其中n是大于0的整数,求f(10)的值。 2.写一个算法对1,8,5,2,4,9,7进行顺序排列。 软件工程专业的培养目标是:要求学生具备计算机软件基础理论、基本知识和基本技能,用软件工程思想、方法和技术分析、设计和实现计算机软件系统的能力[1-2]。笔者学校软件工程专业以Java为核心,围绕Java开设相关的学科平台课程、专业平台课程和专业实践课程,目的是培养具有软件开发应用能力的软件专业技术人才和大型软件管理人才。 1软件工程专业Java系列课程设置 笔者学校计算机软件工程专业平台课程中Java课程群包括:《Java编程基础》、《Java Web应用级开发》、《Java企业级应用开发》、《Java编程基础课程设计》和《Java综合课程设计》。与其相关的平台必修课程和实践课主要分3类:第一类为先修课,《程序设计基础》(基于C语言)、《程序设计实践》(基于C语言)、《面向对象程序设计》(基于C ++)和《面向对象编程课程设计》(基于C++);第二类为数据库,《数据库系统原理及应用》和《数据库应用系统课程设计》;第三类为软件管理课程,《软件工程概论》、《软件设计》、《软件测试》和《软件体系结构》。这些课程开设的学期和课时如表1所示。 2 Java系列课程教学存在的问题 学生普遍反映的问题有:1编程类课程总是在编写没有价值的增、删、改、查代码;2软件管理课程学到的知识无用武之地。教师反映的问题有:学生在编程时眼高手低;编写出的程序和系统存在的bug太多,没有实用价值; 在课程设计和最后的毕业设计中,缺乏整体的软件工程开发思想[3-4],没有达到预期的教学效果。究其原因是课程衔接不好。 通常每位教师在课程体系中只承担1门或2门课程。 教师在讲授时,都根据自己的思路,选择教材和教学案例, 将教学内容贯穿,根据教学知识点对案例进行分析、设计和开发。而在后续课程中,因教师不同,会选择新的案例讲授。例如,在《Java编程基础》中,选用“学生信息管理” 案例,在《Java Web应用开发》中选择 “网上书店管理系统”案例,在《Java企业级应用开发》中选择“学生选课管理系统”案例,在《数据库应用原理及应用》中,可能选择“图书管理系统”案例。单独的一门课程教学中,教师讲授的知识点和学生掌握的知识都符合培养方向和教学大纲要求,但学生仅仅学习了语言的语法规则,编写了简单的增、 删、改、查代码[5],缺乏软件工程综合开发能力的培养。 3教学改革 3.1选订系列教材 同一门课程的教材多种多样,大学教材的价值仅仅是教师讲课和学生学习时的第一参考书,教师讲授时根据教学内容可进行补充和删减。学生通常会根据指定的教材进行预习和复习,作为获取知识的第一依据。系列教材讲授的内容和选取的案列通常有一定的关联。因此,选定系列教材有助于学生对连贯性知识的掌握。 3.2案例选取 在Java系列课程学习过程中,学生充当整个系统开发过程中的所有角色。学生不仅是系统设计者,也是系统的开发者和测试者。因此,为了使学生编写的系统具有一定的实用性,不是相关语法增、删、改、查的简单验证,选取教学案例和实验案例应该符合以下两个要素: (1)选择学生熟悉的实用案例。每个大学生都有在图书馆借阅图书的经历,通过人工和自助借书可以了解图书馆管理业务。借阅流程:借阅者获取借阅资格,根据借阅规则借阅图书;违反借阅规则,接受图书馆的惩罚。因此, 将图书馆管理系统开发过程引入教学,学生熟悉使用过程,对该系统的学习及开发会很快进入角色。 (2)案例具有可延续性,能够贯穿Java系列课程中所有的软件开发和软件管理课程。以可延续案例图书馆管理系统为例,Java系列理论课堂中的教学内容和教学目标如表2所示。 实验课和相应的课程设计,同样采用可延续的案例。 例如,在《Java编程基础》中开发单机版的学生管理系统, 通过后续的软件开发和软件管理课程实践,开发出基于J2EE架构的学生管理系统。在该案例开发过程中,形成规范的软件需求规格说明书、设计说明书、测试用例和用户手册。可延续案例在Java系列实践课堂中的设置如表3所示。 3.3定期开展教研活动 为了使可延续性案例在教学过程中有效执行,需要课程组教师定期交流和沟通,以明确所承担课程的教学内容,搞好课程之间的衔接,提高教学效果。每年春季学期,对大二学生(第四学期)同时开设《Java编程基础》和《软件工程概论》课程,对大三学生(第六学期)开设《Java企业级应用开发》课程。由于可延续案例的设置,三门课程根据其课程大纲,针对同一个 “图书馆管理系统”进行讲授。 通过开展教研活动交流,使《Java编程基础》和《软件工程概论》课程内容更加紧密,相辅相成。 篇2:软件开发工程师(JAVA)笔试题A
篇3:软件开发工程师(JAVA)笔试题A
每年冬季学期,对大三学生开设《Java Web应用级开放》、《软件设计》和《软件测试》课程。这个时期的学生具有一定的编程基础,对编写代码有强烈的成就感,但忽略了系统开发过程中的软件管理知识,设计的系统由于缺乏足够的需求分析和软件测试,没有任何使用价值。因此, 此学期的教研活动,应结合基于Web的图书馆管理系统开发,研讨规范的软件开发过程,提高学生的软件项目分析能力、设计能力和测试能力。
3.4学生定期座谈
定期开展同年级和跨年级的学生座谈会,了解学生对课程的掌握情况,发现教学过程中存在的不足。高年级学生向低年级的学生传授学习经验。开展毕业生就业经验座谈,通过毕业生找工作的亲身经历,了解社会对软件工程专业学生的需求情况。
4结语
Java课程体系是一套相互关联的知识迭代课程体系, 通过可延续性案例在Java课程体系中的设置,使学生在具备计算机软件基础理论、基本知识和基本技能的基础上,运用软件工程思想、方法和技术来分析、设计和实现具有使用价值的计算机软件系统。通过座谈会形式,及时了解学生对课程的掌握情况,完善教学大纲和教学内容。
参考文献
[1]喻晓.应用型本科面向培养软件工程师的Java课程群教学研究[J].计算机教学与教育信息化,2014(7):4518-4520.
[2]邓丹君.面向软件工程师岗位的JavaEE课程体系改革方案[J].软件导刊,2014(9):165-166.
[3]段丽英.基于软件工程专业课程群组建设的Java实训体系改革实践索[J].现代企业教育,2011(11):34-35.
[4]王岩,黄岚,杜伟.Java课程教学体系构建探索[J].计算机教育,2013(9):83-86.
篇4:软件开发工程师(JAVA)笔试题A
一、选择题
1、下列表达式正确的?
A.byte b = 128;
B.boolean flag = null;
C.float f = 0.9239;
D.long a = 2147483648L;
2、下列正确的说法有():
A.声明抽象方法,大括号可有可无
B.声明抽象方法不可写出大括号
C.抽象方法有方法体
D.abstract可修饰属性、方法和类
3、下列不属于java标识符的是():
A._HelloWorld
B.3HelloWorld
C.$HelloWorld
C.HelloWorld3
4、属于java语言中基本数据类型的是():
A.byte B.long
C.Integer D.String
E.var
5、下列代码运行结果是( ):
1. public class SwitchTest {
2. public static void main(String[] args) {
3. System.out.println(“value=”+switchlt(4));
4. }
5. public static int switchlt(int x){
6. int j=1;
7. switch(x){
8. case 1:j++;
9. case 2:j++;
10. case 3:j++;
11. case 4:j++;
12. case 5:j++;
13. default:j++;
14. }
15. return j+x;
16. }
17. }
A.3 B.4
C.5 D.6
E.7 F.8
6、在<插入代码>处写如下代码,正确的是( ):
1. public class Test {
2. int w,x,y,z;
3. public Test(int a,int b){
4. x=a;y=b;
5. }
6. public Test(int a,int b,int c,int d){
6. <插入代码>
7. w=d;z=c;
8. }
9. }
A.Test(a,b);
B.x=a,y=b;
C.this(a,b);
D.x=a;y=b;
7、在一个网页中, 标签包含了下面哪些网页的属性信息():
A. 网页题目
B. 关键词
C. 网页类型
D. 语言内码
8、在HTML页面中包含如下图片标签,以下那条语句可以把图片隐藏():
A. document.getElementById(“pic”).style.display=”visible”;
B. document.getElementById(“pic”).style.display=”disvisible”
C. document.getElementById(“pic”).style.display=”block”;
D. document.getElementById(“pic”).style.display=”none”
9、关于 jquery,是由哪些语言编写的():
A. javascript
B. html
C. java
D. css
10、在CSS样式中以下哪些选项属于选择符的分类()
A. HTML选择符
B. Class选择符
C. #选择符
D. ID选择符
11、下面不是java关键字的是
A:sizeof B:throws C:this D:cast
12、下列不继承Collection接口的选项多选 ( )
A:HashMap B: ArrayList C:Set D:HashTable E:LinkedList
13、String的描述错误的是
A:大量字符串的拼接可以直接使用String
B:String为final,即不可更改的
C:JVM中有字符串池,相同的常量字符串内存中只有1份
D:StringBuffer,声明的时候最好加上大小即new StringBuffer(1024)
14、关于final的使用,错误的描述为:( )
A final用在try{} catch{}后,用于强制执行
B final修饰的变量可以在声明时不进行初始化
C final修饰的方法不可以被重写
D final修饰的类不可以被继承
15、下面关于java流的`说法错误的是
A:Reader Writer是读写字节流的相关接口
B: 文件流需要显示关闭
C: DataInput是读写java基本类型的接口
D:当读写大文件时可以使用BufferedOutputStream,BufferedInputStream
二、简答题
1.Java中结构化程序设计有哪三种基本流程,分别对应那些语句?
2.Java中如何定义和使用接口?
HTML与JS的执行顺序:
A:顺序执行
B:先执行HTML
C:先执行JS
D:同时执行
3. 简述Spring配置 Bean的Scope?
4. 什么是IOC和AOP?采用IOC的好处?一般在什么情况下使用AOP?
5. 简述你所了解的设计模式和应用场景?
6. 请分别用传统HTML和Ext的事件处理机制处理下面button的onclick事件?
7. window.setTimeOut和 window.setInterval()的区别?
四、编程题(编写的代码最好添加适当的说明,避免阅卷人员误判)
1、请使用Java语言定义一个具备栈功能的类,实现以下接口:
1. public interface StackInterface{
2. void push(Object value);
3. Object pop();
4. boolean isEmpty();
5. }
public TreeNode right;
篇5:JAVA软件开发笔试题
对日java软件开发工程师笔试题
1:设int a=10, b=20, c=30;条件表达式a
A.5
B.10
C.20
D.30
2:对 do-whie 语言 错误 的说法是
A.可构成多重循环结构
B.循环次数不可能为 0
C.循环次数可能为 0
D.先执行后判断
3:调用函数时,若实参是一个数组名,则向函数对应的`形参传送的是
A.数组的长度
B.数组的首地址
C.数组第一个元素的值
D.整个数组元素的值
4:C语言中,″x3d″在内存中占用的字节数是
A.1
B.2
C.4
D.5
5:若定义了( )
union
{ char a[10];
short b[4][5];
long c[5];
篇6:腾讯JAVA工程师笔试题
A Ada
B C++
C Pascal
D BASIC 2.下列语句哪一个正确(B)
A
Java程序经编译后会产生machine code B Java程序经编译后会产生byte code C Java程序经编译后会产生DLL D 以上都不正确
3.下列说法正确的有(C)
A class中的constructor不可省略
B constructor必须与class同名,但方法不能与class同名 C constructor在一个对象被new时执行 D 一个class只能定义一个constructor 4.提供Java存取数据库能力的包是(A)
A java.sql
B java.awt
C java.lang
D java.swing 5.下列运算符合法的是(A)
A &&
B <>
C if
D := 6.下列哪一种叙述是正确的(D)
A abstract修饰符可修饰字段、方法和类
B 抽象方法的body部分必须用一对大括号{ }包住 C 声明抽象方法,大括号可有可无 D 声明抽象方法不可写出大括号 7.下列语句正确的是(A)
A 形式参数可被视为local variable B 形式参数可被所有的字段修饰符修饰
C 形式参数为方法被调用时,真正被传递的参数 D 形式参数不可以是对象
8.下列哪种说法是正确的(D)
A 实例方法可直接调用超类的实例方法 B 实例方法可直接调用超类的类方法 C 实例方法可直接调用其他类的实例方法 D 实例方法可直接调用本类的类方法
9.Unicode缺省是用16位来表示一个字的(A)。A 对
B 错
10.执行如下程序代码后,a = 0;c = 0;2 do 3 { 4--c;5 a = a1
D 死循环
11.原生类中的数据类型均可任意转换(B)。A 对
B 错
12.Java程序的种类有(BCD)
A 类(Class)
B Applet
C Application
D 13.下列说法正确的有(ACD)
A 环境变量可在编译source code时指定
B 在编译程序时,所能指定的环境变量不包括class path C javac一次可同时编译数个Java源文件
D javac.exe能指定编译结果要置于哪个目录(directory)14.下列标识符不合法的有(ACD)
A new
B $Usdollars
C 1234
D car.taxi 15.下列说法错误的有(BCD)A 数组是一种对象 B 数组属于一种原生类
C int number=[]={31,23,33,43,35,63}
Servlet
D 数组的大小可以任意改变
16.不能用来修饰interface的有(ACD)
A private
B public
C protected
D static 17.下列正确的有(ACD)
A call by value不会改变实际参数的数值 B call by reference能改变实际参数的参考地址 C call by reference不能改变实际参数的参考地址 D call by reference能改变实际参数的内容
18.下列说法错误的有(ACD)
A 在类方法中可用this来调用本类的类方法 B 在类方法中调用本类的类方法时可直接调用 C 在类方法中只能调用本类中的类方法 D 在类方法中绝对不能调用实例方法 19.下列说法错误的有(ABC)
A Java面向对象语言容许单独的过程与函数存在 B Java面向对象语言容许单独的方法存在
C Java语言中的方法属于类中的成员(member)
D Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同 20.下列说法错误的有(BCD)
A 能被java.exe成功运行的java class文件必须有main()方法 B J2SDK就是Java API
C Appletviewer.exe可利用jar选项运行.jar文件
篇7:软件开发工程师(JAVA)笔试题A
基于以上关系回答一下问题。
1.用 SQL 语句建立未还图书的.读者姓名和单位的视图。
2.用 SQL 语句查询“马林”所借图书中未还的书名。
3.用 SQL 语句查询书名为“高等数学”的库存量。
18:储子系统调优的方法。
19:加入在每个数据页上有30个EMPLOYEE记录,每个记录属于5000个department(department是表employee的一个int字段),那么需要在department上面建立索引吗?为什么?
20:现在普通关系数据库用得数据结构是什么类型的数据结构?
21:什么是数据库的并发控制?
22:一般来说进行等值连接的时候,用B树索引,还是哈希索引?为什么?
23:请设计一个企业进销存系统的数据库表结构,需要实现基本的进销存管理,需要记录的信息包括:供应商信息、商品信息、库存信息、客户信息、出入库信息、仓库信息等;其中,入库视为进货,出库视为销售,且企业有多个仓库;请画表格描述表结构(需要说明每个字段的字段名、字段类型、字段含义描述);
在数据库设计中应:
1.保证每个供应商、商品类别、客户、仓库等的唯一性;
2.保证供应商信息、商品信息、仓库信息、客户信息与出入库信息之间的参照完整性;
3.若有新供应商、新的商品、新的客户、新的仓库加入,保证自动生成其唯一性标识;
4.数据库设计应为以下报表需求提供支持:
(无特定说明,不需编写实现语句,而需在数据库设计中,保证这些报表可以用最多一条SQL语句实现)
a) 日报表:每日进货、销售的商品种类与数目清单,包括对应的供应商信息、仓库信息等;每日企业毛利报表(销售与进货的价格差);
b) 月报表:每月来自各个供应商的商品销售情况;
c) 实时报表:
i. 盘点当前各仓库库存商品列表,包括商品名称、编号、库存时间等请编写实现此需求的SQL语句:
数据库应用:
请撰写一系列的SQL语句,描述完整的商品转库操作,即某种类的一部分商品,从某仓库中转运到另一仓库的过程中,进销存系统需要执行的一系列SQL语句;并保证这一系列的SQL语句的执行完整性;
24:设有学生选课关系SC(学号,课程号,成绩),试用SQL语句检索每门课程的最高分。
篇8:软件工程师笔试题
class A
{
public:
A { cout<<“Construct A by default”<
A(const A& a) { cout<<“consttuct A by copy”<
A& operator =(const A& a) { cout<<“cosnt A by operator =”<
~A { cout<<“Destruct A”<
};
int main
{
A a;
A b=a; //调用拷贝构造函数
A c(a); //调用拷贝构造
A d;
d=a; //赋值
}
输出:
Construct A by default //构造对象a
consttuct A by copy //拷贝构造b
consttuct A by copy //拷贝构造c
Construct A by default //构造a
cosnt A by operator = //赋值d=a
Destruct A
Destruct A
Destruct A
Destruct A
2、考察函数指针
void func(char* a)
{
cout<
}
int main
{
void (*fp)(char*); //填空处
fp = func; //函数名func相当于函数的地址,将其赋给函数指针fp
char* s=“helloc”;
fp(s);
篇9:软件工程师笔试题
class A
{
public:
A { cout<<“Construct A”<
~A { cout<<“Destruct A”<
void speak { cout<<“A is speaking!”<
};
class B:public virtual A
{
public:
B { cout<<“Construct B”<
~B { cout<<“Destruct B”<
};
class C:public virtual A
{
public:
C { cout<<“Constuct C”<
~C { cout<<“Destruct C”<
};
class D:public B, public C
{
public:
D{ cout<<“Constsruct D”<
~D{ cout<<“Destruct D”<
};
int main
{
D *p = new D;
p->speak;
delete p;
}
输出:
Construct A
Construct B
Constuct C
Constsruct D
A is speaking!
Destruct D
Destruct C
Destruct B
篇10:Java软件工程师试题
Java软件工程师试题(A卷)
(满分100分,作答时间为120分钟)
一、单选题(每题3分,共45分)
1.以下哪个修饰符可用于定义成员常量?B
A.start B.final C.abstract D.No modifier can be used
2.定义一个Java文件名字为:Sub.java,其代码为:
class Super {
public int i=0;
public Super(){
}
public static void main(){
}
} System.out.println((new Super()).i);i = 1;
这段程序的运行结果是: B
A.Compile will fail
C.Compile success and print 0
3.给出如下代码:
class Test {
private int m;
public static void fun(){
// some code......}
} B.Compile success and print 1D.Compile success and print nothing
如何使成员变量m被函数fun()直接访问?D
A.将private int m改为protected int m
c.将private int m改为int m
4.下面代码段中,执行之后i和j的值是什么? C
int i = 1;
int j;
j = i++;
A.1,1B.1,2C.2,15.已知如下代码:A
boolean m;
if(m == false)
System.out.println(“false”);
else
B.将private int m改为public int m D.将private int m改为static int mD.2,2
System.out.println(“true”);
执行结果是什么?
A.Compile will fail
C.true
B.false D.An error will occur when running
6.下面哪个语句是创建数组的错误语句?C
A.float f[][] = new float [6][6];
C.float f[][] = new float [][6];
E.float [][]f = new float [6][];
B.float []f[] = new float [6][6];D.float [][]f = new float [6][6];
7.给出如下代码:C
String a = new String(“巨匠IT”);
String b = new String(“巨匠IT”);
请问上面的语句在内存中分配了多少个内存区?
A.1B.2C.3D.48.给出如下代码:D
Set set = new HashSet();
set.add(“gjun”);
set.add(“pcschoolchina”);
set.add(“gjun”);
set.add(“it”);
Iterator it = set.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
上面的代码最有可能的输出结果是:
A.gjun pcschoolchina gjun it
C.it gjun pcschoolchina gjun
9.请看下面的代码段:
String a = “gjun”;
String b = new String(“gjun”);
String c = new String(“gjun”);
if(a==b){
System.out.println(“true”);
}else{B.gjun pcschoolchina it gjun D.it gjun pcschoolchina
System.out.println(“false”);
}
if(a.equals(b)){
System.out.println(“true”);
}else{
System.out.println(“false”);
}
if(c==b){
System.out.println(“true”);
}else{
System.out.println(“false”);
}
输出的结果为:C
A.false truetrue B.truefalse true C.false truefalse D.false false true
10.以下哪个方法用于定义线程的执行体?C
A.start()B.init()C.run()
D.main()E.synchronized()
11.给出url地址为“index?page=3&category=tech”,下面哪个描述是正确的:
A.通过request.getAttribute(“page”)可以获取page的值
B.通过request.getParameter(“page”)可以获取page的值
C.通过request.getAttribute(“page&category”)可以获取page和category的值
D.通过request.getParameter(“page&category”)可以获取page和category的值
12.有一个登录的表单,其属性有name=“loginForm”, action=“loginServlet”, method=“post”,下面哪个描述是正确的:
A.在loginServlet中使用doPost的方法来处理表单的请求
B.在loginServlet中使用doGet的方法来返回表单的处理结果
C.在loginServlet中,先调用doPost的方法,然后再调用service的方法来处理表单的请求
D.在loginServlet中,先调用doGet的方法,然后再调用service的方法来处理表单的请求
13.如果需要从一个Servlet中传递参数username到结果的页面,下面哪种方式是可行的:
A.request.setParameter(“username”, username);
B.request.setAttribute(“username”, username);
C.response.setParameter(“username”, username);
D.request.setAttribute(“username”, username);
14.下列哪个描述是正确的:
A.EJB3.0包含Session Bean, Entity Bean和JMS
B.在系统中,我们会使用Entity Bean来保存数据和处理业务流程
C.Session Bean分为有状态和无状态两中,其中有状态的性能更高
D.远程调用EJB组件,可以通过lookup的方式去查找JNDI名称,获取代理接口来调用
15.关于JUnit的描述,哪个是正确的:
A.JUnit其实是一个main函数
B.JUnit可以应用于系统的整体测试
C.如果要测试一个方法的话可以,使用assertEquals来判定结果的正确性
D.JUnit中可以的使用@Test来修饰方法,该方法可以带参数
二、多选题(每题3分,共45分)
16.如下哪些字符串是Java中的标识符?AE
A.fieldnameB.superC.3number
17.如下哪些是Java中有效的关键字?ACDE
A.constB.NULLC.false
D.#numberE.$numberD.thisE.native
18.在switch语句中,以下哪些参数类型是合法的?ABCD
A.intB.ByteC.charD.byte
19.下面哪个赋值语句是合法的?BCD
A.float a = 2.0B.double b = 2.0
E.String C.int c = 2D.long d = 2
20.已知如下的命令执行java MyTest a b c,请问哪个语句是正确的?CD
A.args[0] = “MyTest a b c”;B.args[0] = “MyTest”;
C.args[0] = “a”;D.args[1] = “b”;
21.下面代码执行后的输出是什么?ADC
for(int i=0;i<3;i++){
} for(int j=0;j<2;j++){} if(j==1)continue;System.out.println(j+“and”+i);
A.0 and 0
F.1 and 2
b.0 and 1G.2 and 0C.0 and 2H.2 and 1D.1 and 0I.2 and 2 E.1 and 1
22.Java中如下哪个修饰符是正确的?ABE
A.privateB.publicC.default
23.已知如下类的说明:
public class Test {
} private float f = 1.0f;int m = 12;static int n = 1;public static void main(String arg[]){} Test t = new Test();D.friendE.protected
如下哪个代码可以加入到下划线中?AD
A.t.f = 0;B.this.n = 1;
24.已知如下类定义:
class Base {
}
public class Child extends Base { public Base(){} public Base(int m){} protected void fun(int n){}C.Test.m = 2;D.Test.n = 3;
// member methods
}
如下哪句可以正确地加入子类中?CD
A.private void fun(int n){}
C.protected void fun(int n){}
B.void fun(int n){} D.public void fun(int n){}
25.下面哪个方法可用于定义新线程类?AD
A.implement the Runnable interface B.add a run()method in the class
C.create an instance of ThreadD.extend the Thread class
26.下面哪个对象是JSP中内置对象?
A.contextB.request
C.exceptionD.application
27.现在有一个登录页面login.jsp,提交到/LoginServlet来处理,下面哪些描述是正确的。
A.通过request.getParameter(“username”)获取到login.jsp中的用户名值
B.通过request.getAttribute(“username”)获取到login.jsp中的用户名值
C.可以在LoginSerlvet中的doPost方法中处理请求
D.可以在LoginSerlvet中的service方法中处理请求
28.在LoginServlet处理完成后,跳转到要去到index.jsp页面,下面那些描述是正确的。
A.response.sendRedirect(“index.jsp”);
B.response.forward(“index.jsp”);
C.request.getRequestDispatcher(“index.jsp”).forward(request, response);
D.request.sendRedirect(“index.jsp”);
29.在Struts2.0中,Action接口默认的result值有:
A.SUCCESSB.FAILUREC.LOGIND.ERROR
E.OUTPUT
30.在Hibernate3.0中,假设现在有个Student的对象,下面那些HQL的写法是正确的:
A.select * from StudentB.from Student
C.select s from Student sD.select s from Student s where id>10
三、填空题(每题5分,共10分)
31.补充完整Test类的定义,使其能计算下面的数列值:
F(1)= 1(n=1)
F(2)= 2(n=2)
F(n)= F(n-1)*n(n>3)
如: 当n=5时,f(5)=f(4)*5,f(4)=f(3)*4,f(3)=f(2)*3,f(2)=f(1)*1,f(1)=1
结果f(5)= 1*1*3*4*5 = 60
public class Test {
public static int calculate(int n){if(①)return 1;return②;} public static void main(String[] args){System.out.println(calculate(3));
}
}
32.请看TestAnimal类的代码:
public class TestAnimal{
public static void main(String args[]){Animal a1 = new Dog();Animal a2 = new Cat();①②
Dog b1 =③
Cat b2 =④
⑤
}⑥}
interface Animal {
}
class Dog implements Animal{
}
class Cat implements Animal{
} public void run(){} public void catchMouse(){} System.out.println(“catching mouse”);System.out.println(“A cat is running now”);public void run(){} public void watch(){} System.out.println(“watching house”);System.out.println(“A dog is running now”);public void run();
请补充完整上面的代码,使其运行的时候得到如下结果:
A dog is running now
A cat is running now
watching house
【软件开发工程师(JAVA)笔试题A】相关文章:
Java软件开发工程师笔试题05-18
软件测试工程师笔试题02-11
软件测试工程师笔试题05-10
威盛公司软件C++工程师笔试题04-15
嵌入式软件工程师笔试题(含答案)05-05
java开发笔试题大全04-11
嵌入式软件开发笔试题02-02
百度软件测试笔试题08-02
常见软件测试笔试题08-04