JAVA开发工程师测试题
JA V A开发工程师测试题
单项选择题:
1. 下面关于Java的说法哪些是错误的?
A. Java是一种完全面向对象的程序设计语言
B. Java支持goto语句
C. Java提供了许多机制来保证程序的健壮性和安全性
D. 同一个Java程序可以在不同硬件或操作系统上运行
答案:B
2. Java是一种编译型语言还是解释型语言?
A. Java是一种编译型语言
B. Java是一种解释型语言
C. Java是一种兼有编译和解释的语言,Java通过解释型方式将源文件变为目标文件,
再通过编译型方式将目标文件变为可执行文件,这样可提高Java程序的运行速度
D. Java是一种兼有编译和解释的语言,Java通过编译型方式将源文件变为目标文件,
再通过解释型方式将目标文件变为可执行文件
答案:D
3. 用JSDK编译源代码文件Hello.java的命令是什么?
A. java Hello.java
B. javac Hello.java
C. compile Hello.java
D. build Hello.java
答案:B
4. 用JSDK运行类Hello的二进制码文件的命令是什么?
A. java Hello.class
B. java hello.class
C. java Hello
D. java hello
答案:C
5. 若要编写一个类Hello,下列说法中哪些是错误的?
A. 源代码文件必须叫做Hello.java或者hello.java,否则编译出错
B. 编译后生成的二进制码文件为Hello.class
C. 运行的命令为java Hello
D. 若将文件Hello.class改名为hello.class,那么用命令java hello也可以运行
答案:D
6. 下面哪些是Java关键字?
A. NULL
B. true
C. sizeof
D. implements
答案:D
7. 关于Java的变量,下面的说法中哪些是错误的?
A. 方法中的临时变量在使用之前必须初始化
B. 常量必须在声明时初始化
C. 对象的实例变量会自动初始化为初始值
D. 可以使用中文字符串作为变量名
答案:B
8. 下面哪些不是Java的基本数据类型?
A. byte
B. char
C. String
D. boolean
答案:C
9. 下列语句中正确的有哪些?
A. short y = 5,000;
B. byte w = 3.1415926;
C. int x = 300;
D. long u = 6000000000;
答案:C
10. 下面的代码输出什么结果?
byte a = (byte)0410;
System.out.println(a);
A. 0
B. -102
C. 264
D. 8
答案:D
11. 变量a为byte类型,变量b为short类型,那么a+b的运算结果是什么类型?
A. byte
B. short
C. int
D. long
答案:C
12. 下面一段代码的输出是什么?
int x=10, y=11;
int z = x+++y;
System.out.println("x="+x+" y="+y+" z="+z);
A. x=11 y=11 z=21
B. x=11 y=11 z=22
C. x=10 y=12 z=21
D. x=10 y=12 z=22
答案:A
13. 下面一段代码,如果b1与b2相等输出"b1 equals b2.",横线上应该使用什么运算符?
boolean b1, b2;
……
if(b1___b2) System.out.println("b1 equals b2.");
A. &&
B. ^
C. |
D. = =
答案:D
14. 下面一段代码执行结束后,y的值为多少?
int x = 0;
int y = 1;
do {
if (x<5) y*=x;
else y+=x;
}while(++x<10);
A. 35
B. 45
C. 65
D. 95
答案:A
15. 下面一段代码运行结束后,b的值为多少?
int b = 10;
for(int a=1;a<=4;a++) {
switch(a) {
case 1: b+=a;
break;
case 2: b-=a;
break;
case 3: b+=a;
case 4: b-=a;
}
}
A. 10
B. 6
C. 5
D. 4
答案:C
16. 第6行的语句和第8行的语句分别跳转到什么位置?
1 test: for (i=1; i<10; i++) {
2 int x = 0;
3 while (x<10) {
4 x++;
5 if (x == i)
6 continue test;
7 else if(x==9)
8 break test;
9 }
10 }
11 x = j;
A. 第6行跳到第3行while的条件判断语句x<10,第8行跳到第10行
B. 第6行跳到第1行for的更新语句i++,第8行跳到第11行
C. 第6行跳到第1行for的更新语句i++,第8行跳到第10行
D. 第6行跳到第3行while的条件判断语句x<10,第8行跳到第11行
答案:B
17. 下面哪条语句是合法的?
A. int[] ia = new int [15];
B. float fa = new float [20];
C. char[] ca = “Some String”;
D. int ia [][] = (4, 5, 6) (1, 2, 3);
答案:A
18. 类中成员的可见性按从高到低排列依次为?
A. private, protected, friendly, public
B. public, friendly, protected, private
C. public, protected, friendly, private
D. private, friendly, protected, public
答案:C
19. 给定下面的代码,哪个选项中的代码是正确的覆盖?
class BaseClass {
private float x = 1.0f ;
protected float getVar ( ) ( return x;)
}
class Subclass extends BaseClass {
private float x = 2.0f;
________________//覆盖父类getVar方法的声明
}
A. Float getVar ( ) { return x;}
B. Public float getVar ( ) { return x;}
C. Float double getVar ( ) { return x;}
D. Public float getVar (float f ) { return f;}
答案:B
20. 关于下面一段代码的说法中,正确的是?
class Ellipse {
public void draw() { System.out.println("Ellipse"); }
}
class Circle extends Ellipse {
public void draw() { System.out.println("Circle");}
}
public class Test {
public static void main(String[] args) {
Ellipse g = new Circle ();
g.draw();
}
}
A. 编译错误,因为g的类型为Ellipse,与Circle类型不符
B. 抛出异常,因为g的类型为Ellipse,与Circle类型不符
C. 没有错误,输出"Ellipse"
D. 没有错误,输出"Circle"
答案:D
21. 下面的代码声明一个抽象绘图类,横线上应该填写什么内容?
_______ class Drawing {
public _______ void drawDot(int x, int y);
public _______ void drawHLine(int x1, int x2, int y){
for ( x = x1; x <= x2; x++) drawDot(x,y);
}
}
A. abstract abstract 空白
B. abstract abstract abstract
C. abstract 空白abstract
D. 空白abstract abstract
答案:A
22. 下面的代码中,横线上填写什么内容才没有错误?
class Test1{
private static int classIndex = 0;
private ______ int index;
public static void main(String[] args) {
Test1 t = new Test1();
System.out.println( ________ );
}
public ______ Test1() {
index = ++classIndex;
}
}
A. static index static
B. static classIndex 空白
C. 空白index 空白
D. 空白classIndex 空白
答案:D
23. 下面的代码中,横线上应该填写什么内容?
_________ MyInterface {
public void fun1();
}
public class Test1 __________ MyInterface{
public static void main(String[] args){
Test1 t = new Test1();
t.fun1();
}
public void fun1() {
System.out.println("fun1");
}
}
A. class extends
B. interface extends
C. interface implement
D. interface implements
答案:D
24. 下面的代码中有什么错误?
1 interface MyInterface {
2 int var = 0;
3 public void fun1();
4 }
5 public class MyClass implements MyInterface{
6 public static void main(String[] args){
7 MyInterface t = new Test1();
8 t.var = 1;
9 t.fun1();
10 }
11 public void fun1() {
12 System.out.println(var);
13 }
14 }
A. 第2行,变量var必须声明为public static final的
B. 第7行,不能创建接口MyInterface类型的变量
C. 第8行,不能为常量var赋值
D. 第11行,方法fun1必须声明为public static final的
答案:C
25. 如何将一个类放到包里?
A. 在类的源文件开始处写上包名
B. 在类的源文件开始处写上“package”关键字,后面跟包名
C. 在类的源文件开始处写上包名,后面跟“package”关键字
D. 将包名作为源文件名
答案:B
多项选择题:
1. Sun发布的Java运行环境包括哪两个部分?
A. 源代码编辑器
B. Java编译器
C. Java虚拟机
D. Java类库(Java应用程序界面)
答案:CD
2. 下面哪些特点说明Java是一种纯粹的面向对象语言?
A. 不存在全局变量和全局函数
B. main函数是类的方法
C. Java程序运行起来后一切皆是对象
D. Java语言是结构中立的
答案:ABC
3. Java语言可以应用于以下哪些场合?
A. 编写Windows下的硬件驱动程序
B. 编写Linux下的硬件驱动程序
C. 编写嵌入式应用
D. 编写Web应用
答案:CD
4. 编写Java程序时,如果一个对象没有用了应该如何处理?
A. 必须用delete语句回收对象占用的内存
B. 可以不用处理,Java会自动定时回收没用的对象所占用的内存
C. 调用对象的finalize方法回收对象占用的内存和资源
D. 如果对象占用了其他资源,应该先释放掉
答案:BD
5. 下面哪些数据类型转换可能会损失精度?
A. int到double
B. char到float
C. int到float
D. long到double
答案:CD
6. Java中的继承有什么特点?
A. 子类继承父类的构造函数
B. 一个类可以继承自多个类
C. 所有类缺省为Object类的子类
D. 单继承性
答案:CD
7. 要在横线所在位置声明一个内部类,下面的选项中哪些声明是正确的?(多选题)
public class OuterClass {
private double d1 1.0;
__________________
}
A. static class InnerClass { static double methoda() {return d1;} }
B. private class InnerClass { public double methoda() {return d1;} }
C. protected class InnerClass { static double methoda() {return d1;} }
D. public abstract class InnerClass { public abstract double methoda(); }
答案:BD
8. 下面哪些说法是正确的?
A. 匿名内部类可以在方法内部声明
B. 匿名内部类的构造函数可以有参数
C. 匿名内部类如果是除Object类外的某个类的子类,还可以实现多个接口
D. 匿名内部类如果是除Object类外的某个类的子类,至多只能再实现一个接口
答案:AB
9. 下面的语句中正确的是?
A. import java.util.Date;
B. import java.*.*;
C. import java.util.*;
D. import https://www.360docs.net/doc/cf6836882.html,ng.System.out;
答案:AC
10. 环境变量classpath有何作用?
A. 虚拟机会从classpath开始按照包层次对应的目录搜寻所用到的类
B. 编译器会从classpath开始按照包层次对应的目录搜寻所用到的类
C. classpath指出了Java API类库所在的目录
D. classpath指出了Java虚拟机所在的目录
答案:AB
11. 想终止Java程序的运行,可以调用什么方法?(多选题)
A. Runtime.exit(0);
B. Runtime.getRuntime().halt(0);
C. Runtime.getRuntime().exit(0);
D. System.exit(0);
答案:CD
12. Java集合框架中为什么既定义了许多类又定义了许多接口?(多选题)
A. 一个接口有多种不同的类来实现,即一种功能有多种方法来实现
B. 一个类实现多个不同的接口,将多种功能集合到一起
C. 接口定义功能,类提供具体实现
D. 因为Java只支持单一继承
答案:AC
13. 实现Set接口的两个类采用的是什么方法实现的?(多选题)
A. HashSet采用哈希表来实现Set接口
B. TreeSet采用有序的平衡二叉树来实现Set接口
C. HashSet采用维护有序数组的方法来实现Set接口
D. TreeSet采用二叉树来实现Set接口
答案:AB
14. 实现Map接口的两个类采用的是什么方法实现的?(多选题)
A. HashMap采用哈希表来实现Map接口
B. HashMap采用维护有序数组的方法来实现Map接口
C. TreeMap采用有序的平衡二叉树来实现Map接口
D. TreeMap采用二叉树来实现Map接口
答案:AC
15. Java的输入输出操作采用流的形式,以下哪些操作可以通过流进行?(多选题)
A. 文件读写
B. 网络数据传输
C. 线程间数据交换
D. 键盘输入和屏幕输出
答案:ABCD
16. 对象流中可以写入哪些类型的数据?
A. 原始数据类型
B. 对象
C. 实现了序列化接口的对象
D. 数组
答案:AC
17. 对象序列化机制有哪些应用?
A. 将对象保存到文件
B. 将对象通过网络传输
C. 对象的类型转换
D. 对象深克隆
答案:ABD
18. 面板类JPanel有什么作用?
A. 面板可以作为绘制图形的底板容器
B. 面板既是组件的容器,又能作为一个组件被安排到更大的容器中
C. 面板的实际作用是使得容器可以嵌套容器
D. 每个面板可以有自己的布局管理器,使得一个窗口中可有多种布局方式
答案:ABCD
19. 下面哪些标准对话框类是J2SDK提供的?
A. JFileChooser
B. JOptionPane
C. JFontChooser
D. JColorChooser
答案:ABD
20. 布局管理器的作用是什么?
A. 当容器大小变化时自动调整容器中各组件的大小和位置
B. 使各组件在不同平台上排列和显示都正常
C. 安排程序窗口在屏幕上的位置和大小
D. 多窗口程序中安排各个窗口的大小和位置
答案:AB
java高级工程师_面试题和答案
一:选择题 1. 关于以下程序代码的说明正确的是( 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=103 D、程序通过编译,输出结果为:x=102 2. 下列关于for循环和while循环的说法中哪个是正确的?( B ) A.while循环能实现的操作,for循环也都能实现 B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果C.两种循环任何时候都可替换 D.两种循环结构中都必须有循环体,循环体不能为空 3. 以下选项中循环结构合法的是( 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); 4. 给出下面代码段, 哪行将引起一个编译时错误?( D )
Java编程基础知识点汇总及习题集答案
J a v a编程基础知识点汇总及习题集答案 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-
目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (14) 第四章循环语句 (20) 第五章方法 (26) 第六章数组 (33) 第七章面向对象 (42) 第八章异常 (63) 第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心的部分,包含Java 最核心的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、Web Service等。 Java ME:(J2ME,Java 2
Platform Micro Edition,微型版),用于小型电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 path环境变量:存放可执行文件的存放路径,路径之间 用逗号隔开 classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class); :Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class) 5、一切程序运行的入口public static void main (String args []){ World!”); } 课堂笔记
Java软件开发工程师笔试题(答案)
Java工程师笔试题 一、填空题(本大题10小题,每空1分,共20分)。 1.Java语言的三大特性即是: 继承、封装、多态。 2.在Java中,char 型采用____unicode_______编码方案,这样,无论是中文字符还是英文字符,都是占用__2___个字节的内存空间。 3. 形式参数指的是方法被__定义____ 时的参数行,实际参数是方法被__调用__ _ 时所传递进去的变量或值。 4.JSP内置对象中,application对象是代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息,而session 对象则是每个客户专用的。 5.如果想把一个对象写入一个流,那么这个类就必须实现Seralizable 接口。 6.程序中实现多线程的方法有两种:继承Thread类和实现___Runable _ 接口。 7.多线程中,可以通过调用相应的setPriority() 方法来修改一个线程的相对优先级。 8.面向对象编程的五大设计原则,分别是单一职责、开放封闭、 里氏替换、依赖倒置、接口分离 9.通过Ajax,客户端获取的数据主要有两种类型:文本型和xml 10.Socket通常也称为套接字,用于描述__ ip 和_ _接口 二、选择题(本大题20 小题,每小题2分.共40分)。 1.在JA V A中,如果父类中某些方法不包含任何逻辑,并且需要由子类重写.应该使用( )关键字来声明父类的这些方法: A) final B) static C) abstract D) void 2.在JA V A中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是()。 A) interface A extend B,C B) interface A implements B,C C) class A implements B,C D) class A implements B, implements C
java基础测试题
一、选择题48分每题2分 1.面向对象的三大特性不包括() A 封装 B 继承 C 多态 D 消息通信 2.下列声明哪个是错误的() A int i = 10; B float f = 1.1; C double d = 34.4; D long m = 4990; 3.程序的执行结果是() public class Test { public static void main(String [] args){ System.out.println(“”+'a'+1); } } A 98 B a 1 C 971 D 197 4.程序的执行结果是() public class Test { int x; public static void main(String [] args){ Test t = new Test(); t.x=5; change(t); System.out.println(t.x); } public static void change(Test t){ t.x=3; } } A 5 B 3 C 编译出错 D 以上答案都不对 5.关于类与对象说法错误的是() A 类是模板,对象是产品 B 人是类,男人是对象 C 类是对某一事物的描述是抽象的,对象是实际存在的该类事物的个体 D 汽车设计图是类,制造的若干汽车是对象 6.关于构造函数说法错误的是() A 构造函数名与类相同 B 构造函数无返回值,可以使用void 修饰 C 构造函数在创建对象时被调用 D 在一个类中如果没有明确的给出构造函数,编译器会自动提供一个构造函数7.程序的执行结果是() public class Test { public static void main(String [] args){ String str1= new String("abc"); String str2 = new String("abc"); String str3=str1; if(str1.equals(str2)){ System.out.println("true"); }else{ System.out.println("false"); } if(str1==str3){
Java工程师面试题(含答案)
1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装: 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4. 多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗 基本数据类型包括byte、int、char、long、float、double、boolean和short。 类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int 和Integer 有什么区别 Java提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int 提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为null,而原始类型实例变量的缺省值与它们的类型有关。 7、String 和StringBuffer的区别 JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String 类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。 8、运行时异常与一般异常有何异同 异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。 9、说出Servlet的生命周期,并说出Servlet和CGI的区别。 Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求
Java基础试题及其答案
Java试题 1) java程序中,main方法的格式正确的是()。(选择一项) a)static void main(String[] args) b)public void main(String[] args) c)public static void main(String[]s) d)public static void main(String[] args) 2)给定java代码,如下: public byte count(byte b1,byte b2){ return______; } 要使用这段代码能够编译成功,横线处可以填入()。(选择一项)a)(byte) (b1-b2) b)(byte) b1-b2 c) b1-b2 d) (byte) b1/b2 3)在Java中,在包下定义一个类,要让包下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。 (选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; “”+new Person() toString() c) int a= 3+5 d) float f=5+; double float 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; (“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 已到文件尾,再读取抛出 7) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList List 有序可重复 b) HashSet Set 无序不可重复同一对象是重复 的 c) HashMap Map(key/value)重复定义:hashCode、 equals(业务) d) LinkedList List 8)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public static void main(String args[]){ int a=5;
Java软件中年级工程师笔试题复杂逻辑
J2E E部分 1、运算符优先级问题,下面代码的结果是多少?(笔试) package test; public class Test { public static void main(String[] args) { int k = 0; int ret = ++k + k++ + ++k + k; // ret的值为多少 } } 2、运算符问题,下面代码分别输出什么?(笔试) package test; public class Test { public static void main(String[] args) { int i1 = 10, i2 = 10; } } 3、下面代码的结果是什么?还是抛出异常?(笔试) package test; public class Test { public void myMethod(String str) { } public void myMethod(Object obj) { } public static void main(String[] args) { Test t = new Test(); t.myMethod(null); } } 4、假设今天是9月8日,下面代码输出什么?(笔试) package test; public class Test { public static void main(String[] args) { Date date = new Date(); } } 5、下面代码的输出结果是什么? package test; public class Test {
public static void main(String[] args) { double val = 11.5; } } 6、下面代码的结果是什么? package test; public class Test extends Base { public static void main(String[] args) { Base b = new Test(); b.method(); Test t = new Test(); t.method(); } @Override public void method() { } } class Base { public void method() throws InterruptedException { } } 7、以下代码的结果是什么? package test; public class Test extends Base { public static void main(String[] args) { new Test().method(); } public void method() { } } class Base { } 8、true or false? package test; public class Test { public static void main(String[] args) { String str1 = new String("abc"); String str2 = new String("abc"); StringBuffer sb1 = new StringBuffer("abc"); StringBuffer sb2 = new StringBuffer("abc"); } } 9、输出的结果是什么?
JAVA入门练习50题(含答案)
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } }
java软件工程师面试题集
java软件工程师面试题集 EJB方面 1、EJB2.0有哪些内容?分别用在什么场合? EJB2.0和EJB1.1的区别? 答:规范内容包括Bean提供者,应用程序装配者,EJB容器,EJB配置工具,EJB服务提供者,系统管理员。这里面,EJB容器是EJB之所以能够运行的核心。EJB容器管理着EJB的创建,撤消,激活,去活,与数据库的连接等等重要的核心工作。JSP,Servlet,EJB,JNDI,JDBC,JMS..... 2、EJB与JAVA BEAN的区别? 答:Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java 类都可以是一个Bean。但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地进程内COM组件,它是不能被跨进程访问的。Enterprise Java Bean 相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB 必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。 3、EJB的基本架构 答:一个EJB包括三个部分: Remote Interface 接口的代码 package Beans; import javax.ejb.EJBObject; import java.rmi.RemoteException; public interface Add extends EJBObject { //some method declare } Home Interface 接口的代码
java基础练习题
1) 以下关于Java语言说法错误的是()。(选择两项) a) Java语言是一种OO语言,Java API是Java语言的帮助文档 b) Java语言具有平台无关性-Write Once,Run Anywhere c) Java语言的核心是Java Virtual Machine d) 使用Java语言,程序员要使用原始方法分配和释放内存空间 e) Java语言是一种编译执行语言 知识点: 第一章Java语言基础Java语言基本概念 2) 以下哪一项不是Java的关键字(b)。(选择一项) a) if b) then c) goto d) case e) while 知识点: 第二章Java编程基础Java中的关键字 3) 下列(a,e)不是合法的Java语言标识符。(选择两项) a) 2variable b) variable2 c) _whatavariable d) $anothervar e) #myvar f) _3_ 知识点: 第二章Java编程基础Java中的标识符 4) 执行下列代码段后,变量x的值是(c)。(选择一项) x=9; y=9; x=(y<=x++)?1:0; a) 1 b) 2 c) 0 d) 10 知识点: 第二章Java编程基础三元运算符 5) System.out.println(4 | 7);上面语句的输出结果是(d)。(选择一项) a) 4 b) 5 c) 6 d) 7 e) 0 知识点: 第二章Java编程基础位运算符 6) 以下会产生编译错误的Java语句是(b)。(选择一项) a) if (2 == 3) System.out.println("Hi"); b) if (2 = 3) System.out.println("Hi");
Java软件开发工程师笔试题(答案)
Java软件开发工程师笔试题(答案) Java工程师笔试题 1,填空(此大题10项,每空1分,共20分) 1。Java语言的三个特性是继承性、封装性和多态性2.在Java中,char 使用_ _ _ _ Unicode _ _ _ _ _ _编码方案,因此中文字符和英文字符都占用__2__字节的内存空间 3。当方法由_ _定义时,形参指的是参数行,当方法由_ _调用时,实际参数是传入的变量或值。 4。JSP内置对象,应用程序对象代表应用程序上下文,它允许JSP 页面与包含在同一应用程序中的任何网络组件共享信息,而会话对象是特定于每个客户的 5。如果你想把一个对象写到一个流中,这个类必须实现Seralizable 接口 6。在程序中实现多线程有两种方法:继承线程类和实现_ _ Runable _ interface 7。在多线程中,线程的相对优先级可以通过调用相应的setPriority()方法来修改 8。面向对象编程的五个设计原则是单一责任、开放和封闭、里氏尺度替换、依赖倒置、接口分离。通过Ajax,客户端获取的数据主要有两种类型:文本类型和xml 10。Socket通常也叫socket,用来描述__ ip和_ _ interface 2,多项选择题(这个大题20项,每项2分,共40分)
1。在JA V A中,如果父类中的一些方法不包含任何逻辑并且需要被子类重写,那么父类的这些方法应该使用()关键字来声明:a)final b)static c)abstract d)void 2。在JA V A中,已经定义了两个接口b和c。要定义实现这两个接口的类,下面的语句是正确的() a)接口aextend b,c b)接口a implements b,c c)类a mplements b,c d)类a mplements b,实现c 3。可以在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的值为()a)3b)3.5°c)4d)5 6。下列关于继承的陈述中哪一个是正确的?( )a)子类只继承父类的公共方法和属性:b)子类继承父类的非私有属性和方法: C)子类继承父类的方法,但不继承父类的属性:d)子类继承所有的属性和方法。 7。在爪哇。使用JDBC时对于对同一个SQL语句的多次调用,使用()通常会提高效率 a)语句b)可调用语句c)准备语句d)prarmeters语句8。以下方法无法控制Servlet的生命周期:a)服务b)销毁c) dopost d) init9。可以分配给字节变量的值的范围是()0 ~ 65535 b) (-128) ~ 127 c) (-32,768) ~ 32,
JAVA试题及答案
JA V A语言基础内部测试题 选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。)(每题2分) 没有注明选择几项的,只选择一项 1、JAVA所定义的版本中不包括:() A、JAVA2 EE B、JAVA2 Card C、JAVA2 ME D、JAVA2 HE E、JAVA2 SE 2、下列说法正确的是() A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来 3、Java中,在如下所示的Test类中,共有()个构造方法。 public class Test{ private int x; public Test(){ x=35; } public void Test(double f){ =(int)f; } public Test(String s){} } A、0 B、 1 C、 2 D、3 4、变量命名规范说法正确的是() A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字; 5、下列javaDoc注释正确的是() A、/*我爱北京天安门*/
B、quals("john") C、"john" = "john" D、"john".equals(new String("john")) 6、下列输出结果是() int a = 0 ; while ( a < 5 ) { switch(a){ case 0: case 3 : a = a + 2; case 1 : case 2 : a = a + 3; default : a = a + 5; } } ( a ) ; A、0 B、5 C、10 D、其他 7、下列代码输出结果是( ) int i = 10; while ( i > 0 ){ i = i + 1; if ( i = =10 ){ break; } } A.while循环执行10次 B.死循环 C.循环一次都不执行 D.循环执行一次 8、下面有关for循环的描述正确的是() A、for循环体语句中,可以包含多条语句,但要用大括号括起来 B、for循环只能用于循环次数已经确定的情况 C、在for循环中,不能使用break语句跳出循环 D、for循环是先执行循环体语句,后进行条件判断 9、下列()属于引用数据类型(选择两项) A、String B、char C、用户自定义的Student类类型
java软件工程师笔试试题
JA V A编程方面 1.Java中switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?(3’) 2.Java中String 对象能否被继承?STRING与STRINGBUFFER的区别?(6’) 3.说说你熟悉的几种Java的常用设计模式,一般在哪种情况下用到这些设计模式?你对设 计模式有什么看法?用java实现一个单例模式?(12’) 4.abstract class和interface有什么区别?(5’) 5.说说你所知道的java解析XML的方法。(4’) 6.简述ArrayList和Vector的区别,HashMap和Hashtable的区别。(20’) 7.写一个Javascript函数,返回指定的英文句子中的每个单词及其字符的起止位置。 例:”Th at is right.”应依次返回”Th at 0-4”, ”is 5-7” ,”right 8-13”(15’) 8.当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变
化后的结果?那么这里到底是值传递还是引用传递? (5’) 数据库方面 1.事务是什么?(5’) 2.Oracle中有2张表格T1和T2,如下所示: T1 A B C 1 1 1 1 21 1 12 21 1 12 1 Null 12 41 2 12 4 3 T2 A B C 12 1 5 13 1 1 14 2 2 22 5 2 2 16 1 请问select * from T2 where c not in (select c from T1)结果是什么?(10’) 英文翻译(15’) Foremost amongst these is the Spring Framework's Inversion of Control (IoC) container. A thorough treatment of the Spring Framework's IoC container is closely followed by comprehensive coverage of Spring's Aspect-Oriented Programming (AOP) technologies. The Spring Framework has its own AOP framework, which is conceptually easy to understand, and which successfully addresses the 80% sweet spot of AOP requirements in Java enterprise programming. Coverage of Spring's integration with AspectJ (currently the richest - in terms of features - and certainly most mature AOP implementation in the Java enterprise space) is also provided.
Java基础笔试机试测试题(带答案)
Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java" 中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量 c 的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main 方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常
Java开发工程师笔试题(带答案)
Java开发工程师笔试试题 (请不要在试题上留任痕迹,所有答案均写在答题纸上) 一.编程题(共26分) 1.任意写出一种排序算法。(6分) public void sort(int [] array){ //代码区 } 2.求1+2+3+..n(不能使用乘除法、for 、while 、if 、else 、switch 、case 等关键字 以及条件判断语句)(8分) public int sum(int n){ //代码区 return 0; } 3.完成下面法,输入一个整数,输出如下指定样式图案。(12分) 输入:3, 输出: 1*2*3 7*8*9 4*5*6
输入:4 输出: 1*2*3*4 9*10*11*12 13*14*15*16 5*6*7*8 public void drawNumPic(int n){ //代码区 } 二.选择题(定项选择每题3分,不定项选择每题4分,共63分) 1.在基本JAVA类型中,如果不明确指定,整数型的默认是__类型,带小数的默认是__类型?( B ) A.int float B.int double C.long float D.long double 2.只有实现了__接口的类,其对象才能序列化( A ) A.Serializable B.Cloneable https://www.360docs.net/doc/cf6836882.html,parable
D.Writeable 3.代码System. out. println(10 % 3 * 2);将打印出?( B ) A. 1 B.2 C.4 D.6 4.以下程序运行的结果为( A ) public class Example extends Thread{ @Override public void run(){ try{ Thread.sleep(1000); }catch (InterruptedException e){ e.printStackTrace(); } System.out.print("run"); } public static void main(String[] args){ Example example=new Example(); example.run(); System.out.print("main"); } } A.run main B.main run C.main D.run E.不能确定 5.下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?( B ) A.实例变量指的是类中定义的变量,即类成员变量,如果没有初始化,会有默认值
最新Java基础试题及其答案
Java试题 一单项选择 1)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。() a)protected b)private c)public d)friendly 2)在Java中,下列()语句不能通过编译。(选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; c) int a= 3+5 d) float f=5+5.5; 3)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; s.concat(“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 4) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList b) HashSet c) HashMap d) LinkedList 5)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public staticvoid main(String args[]){ int a=5; System.out.println(a%2==1) ?(a+1) /2:a/2) ; } } (选择一项) a)1 b)2 c)2.5 d)3 6)以下Java语句中,String str = “123456789”;str =str.subString(1,3);执行后str中的值为。(选择一项) a) “23” b)“123”
java基础测试题及答案
、选择题(每题 2 分,共40 分) 1、下面哪个是Java 语言中正确的标识符( C ) A、3com B 、import C、that D、this 2、下面哪个语句(初始化数组)是不正确的: ( B ) A.int x[] = {1,2,3}; B .int x[3] = {1,2,3}; C.int[] x = {1,2,3}; D .int x[] = new int[]{1,2,3}; 3、下述概念中不属于面向对象方法的是( D ) 。 A. 对象、消息??B?继承、多态? ?? C.类、封装? ??? D .过程调用 4、下面的代码段中,执行之后i 和j 的值是什么? ( B ) int i = 1; int j; j = i++*2+3*--i; A . 1, 2 B . 1, 5 C . 2, 1 D . 2, 2 5、下面哪条语句把方法声明为抽象的公共方法?( B ) A. public abstract method(); B. public abstract void method(); C. public abstract void method(){} D. public void method() extends abstract;
6、下面关于java 中类的说法哪个是不正确的?( C ) A. 类体中只能有变量定义和成员方法的定义,不能有其他语句。 B. 构造函数是类中的特殊方法。 C?类一定要声明为public的,才可以执行。 D. —个java文件中可以有多个class定义。 7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的? ( C ) class A { int i; static String s; void method1() { } static void method2() { } } A、; B 、(); C. (); D 、() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改 变?( B ) A、CardLayout B 、FlowLayout C 、BorderLayout D 、GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C ) A.滑块 B. 进度条 C.按钮 D. 标签
软件开发工程师(JAVA)笔试题
软件开发工程师(JAVA)笔试题 请在90分钟以内做答答案请写在答题纸上 一、选择题 1、下面哪项是不合法的标识符:() A. $persons B. TwoUsers C. *point D. _endline E. final 2、下列运算符合法的是() A.&& B.<> C.if D.:= 3、下面描述中哪两项相等:()[选择两项] A.<%= YoshiBean.size%> B.<%= YoshiBean.getSize()%> C.<%= YoshiBean.getProperty(“size”)%> D.