JAVA语言基础内部测试题
一.单项选择题(请选择最符合题目要求的答案)(每题2分)
1、JAVA所定义的版本中不包括:()
A、JAVA2 EE
B、JAVA2 ME
C、JAVA2 HE
D、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){
This.x=(int)f;
}
public Test(String s){}
}
//参数个数或类型不一致,不能含有void
A.0 B、1 C、2D、3
4、变量命名规范说法正确的是()
A、变量由字母、下划线、数字、$符号随意组成;
B、变量不能以数字作为开头;
C、A和a在java中是同一个变量;
D、不同类型的变量,可以起相同的名字;
5、为一个boolean类型变量赋值时,可以使用( )方式
A、boolean = 1;
B、boolean a = (9 >= 10);
C、boolean a="真";
D、boolean a = = false;
6、以下( )不是合法的标识符
A、STRING
B、x3x;
C、void
D、de$f
7、表达式(11+3*8)/4%3的值是( )
A.31 B、0 C、1 D、2
8、()表达式不可以作为循环条件
A、i++;
B、i>5;
C、bEqual = str.equals("q");
D、count = = i;
9、运算符优先级别排序正确的是()
A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;
B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;
C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;
D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;
10、以下程序的运行结果是:( )
public class Increment{
public static void main(String args[]) {
int a;
a = 6;
System.out.print(a);---6
System.out.print(a++);---6
System.out.print(a);----7
}
}
A.666
B.667
C.677
D.676
11、下列值不为true的表达式有()。
A、"john" = = "john"
B、"john".equals("john")
C、"john" = "john"
D、"john".equals(new String("john"))
12、下列输出结果是()
int a = 0 ;
while ( a < 5 ) {
switch(a){
case 0:
case 3 : a = a + 2;、、a=2
case 1 :
case 2 : a = a + 3;..a=5
default : a = a + 5;..a=10
}
}
System.out.print ( a ) ;
A、0
B、5
C、10
D、其他
13、下列代码输出结果是( )
int i = 10;
while ( i > 0 ){
i = i + 1;
if ( i = =10 ){
break;
}
}
A.while循环执行10次
B.死循环
C.循环一次都不执行
D.循环执行一次
14、下面有关for循环的描述正确的是()
A、for循环体语句中,可以包含多条语句,但要用大括号括起来
B、for循环只能用于循环次数已经确定的情况
C、在for循环中,不能使用break语句跳出循环
D、for循环是先执行循环体语句,后进行条件判断
15、对象的特征在类中表示为变量,称为类的()。
A、对象
B、属性
C、方法
D、数据类型
16、score是一个整数数组,有五个元素,已经正确初始化并赋值,仔细阅读下面代码,程
序运行结果是()
temp = score[0];
for (int index = 1;index < 5;index++) {
if (score[index] < temp) {
temp = score[index];
}
}
A.求最大数
B.求最小数
C.找到数组最后一个元素
D.编译出错
17、在Java中下面代码是()条语句
int i ;
i=123;
int j=0,k=0;
System.out.println(i+";"+";"+j+""+k);
A、3
B、4
C、5
D、6
18、执行下面代码结果()
for(int i=0;;){
System.out.println("这是 "+i);
break;
}
A、语法错误,缺少表达式2和表达式3
B、死循环
C、程序什么都不输出
D、输出:这是0
19、下面代码输出结果是()。
int i=0,s=0;
do{
if (i%2 = = 0 ){
i++;
continue;
}
i++;
s = s + i;
} while (i<7);
System.out.println(s);
A、16
B、12
C、28
D、21
20、分析选项中关于Java中this关键字的说法正确的是()
A、this关键字是在对象内部指代自身的引用
B、this关键字可以在类中的任何位置使用
C、this关键字和类关联,而不是和特定的对象关联
D、同一个类的不同对象共用一个this
二.多项选择题(所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分)(每题2分)
21、在Java中,下面对于构造函数的描述错误的是()
A、类不一定要显式定义构造函数
B、构造函数的返回类型是void
C、如果构造函数不带任何参数,那么构造函数的名称和类名可以不同
D、一个类可以定义多个构造函数
22、给定java代码如下所示,在A处新增下列()方法,是对cal方法的重载(选择两项)
public class Test
{
public void cal(int x, int y, int z)
{
}
//A
}
A.public int cal(int x,int y,float z){return 0;}
B.public int cal(int x,int y,int z){return 0;}
C.public void cal(int x,int z){}
D.public viod cal(int z,int y,int x){}
23、下面关于数组的说法中,错误的是()
A、在类中声明一个整数数组作为成员变量,如果没有给它赋值,数值元素值为空
B、数组可以在内存空间连续存储任意一组数据
C、数组必须先声明,然后才能使用
D、数组本身是一个对象
24、下列关于字符串的描叙中错误的是()
A、43②字符串是对象
B、String对象存储字符串的效率比StringBuffer高
C、可以使用StringBuffer sb="这里是字符串"声明并初始化StringBuffer对象sb+
D、String类提供了许多用来操作字符串的方法:连接,提取,查询等
25、关于类的描叙正确的是()(选择两项)
A、在类中定义的变量称为类的成员变量,在别的类中可以直接使用
B、局部变量的作用范围仅仅在定义它的方法内,或者是在定义它的控制流块中
C、使用别的类的方法仅仅需要引用方法的名字即可
D、一个类的方法使用该类的另一个方法时可以直接引用方法名
26、下列()属于引用数据类型
A、String
B、char
C、用户自定义的Student类类型
D、int
27、在Java中,关于构造方法,下列说法正确的是( )
A、构造方法的名称必须与类名相同
B、构造方法可以带参数
C、构造方法不可以重载
D、构造方法绝对不能有返回值
28、下面()是String类提供的合法的方法。
A、equals(String)
B、trim()
C、append()
D、indexOf()
29、以下()代码,对数组的定义正确的是。
A、int[] a;
B、a = {1, 2, 3, 4, 5};
C、int[] a = new int[5]{1, 2, 3, 4, 5};
D、int[] a = new int[5];
30、在java中下列关于自动类型转换说法错误的是()
A、基本数据类型和String相加结果一定是字符串型
B、char类型和int类型相加结果一定是字符
C、double类型可以自动转换为int
D、char + int + double +"" 结果一定是double;
三.填空题(每空一分)
3.面向对象编程的三大特征是封裝、继承、多态。
4.在一个类中含有 static 关键字的成员变量属于类变量。可以通过类名直接访问。
5.写出一条换行的打印语句System.out.println(); 。
四.判断题(每题一分)
1.一个".java"源文件中可以包括多个类()
2.数组中有length()这个方法,String中也有length()方法()
3.swtich中的参数可以是byte类型,也可以作用在long类型。()
4.String是最基本的数据类型。()
5.float型float f=3.4f时,该语句是错误的。()五.综合题(共25分)
1.定义两个变量a和b,不使用第三个变量,使两个值交换(5分)
2.代码:(5分)
int j=1;
int x=2;
switch(x) {
case 1: j++; break;
case 2: j++; break;
case 3: j++; break;
default : j++; break;
}
System.out.println(j);
输出结果:
3.解释静态变量和实例变量的区别?(5分)
4.张丘建《算经》中提出“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡
翁、母、雏各几何?写出程序(10分)
《Java语言程序设计》 一.选择题:本 大题共20小 题;每小题1 分,共20分。 在每小题给出 的四个选择中,只有一项是符合题目要求的,把所 选择项前的字母填在题后的括号内。 1.一个Java源程序编译后生成的文件为 Test.class,则运行该程序应该使用的命令为 ()。 (A)javac Test (B)javac Test.class (C)java Test (D)java Test.class 2. 下面数据类型的定义中错误的是()。 (A)int a = 10; (B)double d = 1.2; (C)float f = 1.2; (D)char c = ‘A’; 3. 类可以保护它的成员变量和成员函数不会被其 他对象随意访问到,这一特性属于类的()。 (A)封装性(B)继承性 (C)多态性(D)重载 4. 以下关于字符串类的说法正确的是()。 (A)String类用于字符串变量,而 StringBuffer类用于字符串常量 (B)String类用于字符串常量,而 StringBuffer类用于字符串变量 (C)String类的对象只能用“new”关键字 生成 (D)StringBuffer字符串的容量是指字符串 中字符的个数 5. 在Java的异常处理语句中对finally的描述正 确的是()。 (A)不管是否发生异常,finally中的程序 都要执行 (B)只有不发生异常时,finally中的程序 才需要执行 (C)只有异常发生时,finally中的程序才 需要执行 (D)不管是否发生异常,finally中的程序 都不会执行 6. 在子类的定义中有一个和父类同名的成员函 数,这一现象称为函数的()。 (A)继承(B)覆盖 (C)错误(D)重载 7. 下面文件操作中哪一个方法是用来一次创建多 个目录的()。 (A)createNewFiles() (B)mkdir() (C)isDirectory() (D)mkdirs() 8. 在基于Swing的图形用户界面设计中,下面哪 一个属于中间级容器()。
JAVA语言基础内部测试题 一.单项选择题(请选择最符合题目要求的答案)(每题2分) 1.定义类头时,不可能用到的关键字是( )。 A) class B)private C)extends D)public 2.下列类定义中,不正确的是( )。 A)class x { .... } B)class x extends y { .... } C)static class x implements y1,y2 { .... } D)public class x extends Applet { .... } 3.设 A为已定义的类名,下列声明A类的对象a的语句中正确的是( )。 A)float A a; B)public A a=A( ); C) A a=new int( ); D) A a=new A( ); 4.有一个类A,以下为其构造方法的声明,其中正确的是( )。 A)public A(int x){...} B)static A(int x){...} C)public a(int x){...} D)void A(int x){...} 5.下列语句哪一个正确() A)Java程序经编译后会产生machine code B)Java程序经编译后会产生byte code C)Java程序经编译后会产生DLL D)以上都不正确 6.下列选项中,定义接口MyInterface的语句正确的是:() A)interface MyInterface{ } B) implements MyInterface { } C) class MyInterface{ } D) implements interface My{ } 7.如果子类中的方法mymethod()覆盖了父类中的方法mymethod(),假设父类方法头部定 义如下:void mymethod(int a),则子类方法的定义不合法的是:() A)public void mymethod(int a) B)protected void mymethod(int a) C)private void mymethod(int a) D)void mymethod(int a) 8.在异常处理中,如释放资源、关闭文件、关闭数据库等由( )来完成。 A.try子句 B.catch子句 C.throw子句 D.finally子句 9.给定以下JAVA代码,这段代码编译运行后输出的结果是() public class Test { public static int aMethod(int i) throws Exception { try{ return i/10; }catch(Exception ex){ throw new Exception ("exception in a aMothod"); }finally{ System.out.print("finally"); } }
1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4. 编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; "The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F C. _whatavariable D. _3_
6.内部数据类型byte的取值范围是B - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."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.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: "zero"); break; case 1: "one"); case 2: "two"); default: "default"); } B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default: "default"); case 0:
天津城市建设学院2007~2008学年第二学期 《 java 语言程序设计A 》 试题A 卷 课程号:073101-0 试卷说明:闭卷考试,时间120分钟。 一、 填空(本题共15空,每空2分,共30分) 1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生_____4___个文件名与类名相同扩展名为___.Class_____的字节码文件。 2.Java 中所有类都是类 __Object__的子类。 3.请填出在java .lang 包中与下列基本数据类型相对应的封装类: float :java .lang .Float , char : _ java .Lang.char_______, boolean : ___ java .Lang.boolean_____。 4.被关键字____final______修饰的方法是不能被当前类的子类重新定义的方法 5.线程的四种状态是__新建_____ 、_运行_ 、_中断 、__死亡___。 6.java 语言中__https://www.wendangku.net/doc/6a1799088.html,ng.Objet ___是所有类的根。 7.Swing 的事件处理机制包括__事件的监听者__、事件和事件处理者。 8.URL_____Uniform Resourse Locator_____是的缩写。 9.java 有两类应用程序java Application 和____java 10.转义字符以___\__开头。 二、选择(本题共20小题,每题2分,共40分) 1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的 ? ( B ) A 、 ArrayList myList=new Object (); B 、 List myList=new ArrayList (); C 、 ArrayList myList=new List (); D 、 List myList=new List (); 2.paint()方法使用哪种类型的参数? ( A ) A 、 Graphics B 、 Graphics2D C 、 String D 、 Color 3.指出正确的表达式 ( C ) A 、 byte=128; B 、 Boolean=null; C 、 long l=0xfffL; D 、 double=0.9239d; 4.指出下列程序运行的结果 ( B ) public class Example{ String str=new String("good"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex .change(ex .str,ex .ch); System .out .print(ex .str+" and "); Sytem .out .print(ex .ch); } public void change(String str,char ch[]){ str="test ok"; ch[0]='g'; } } B 、 good and abc B 、 good and gbc C 、test ok and abc D 、 test ok and gbc 5.运行下列程序, 会产生什么结果 ( A )
JAVA考试试卷及答案 选择题 3、在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的(D)方法来完成一些画图操作。 ()() ()() 3、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?B A)安全性B)多线程C)跨平台D)可移植 4、下列哪个类声明是正确的?D A)abstractfinalclassHI{···}B)abstractprivatemove(){···} C)protectedprivatenumber;D)publicabstractclassCar{···} 6、在Java语言中,下列哪些语句关于内存回收的说明是正确的?B A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 10、下列Object类中的方法,哪一项不是完全跟线程有关:A A.StringtoString() B.voidnotify() C.voidnotifyAll() D.voidwait() 11、给出下面代码:C publicclassPerson{ staticintarr[]=newint[10]; publicstaticvoidmain(Stringa[]) { } } 下列说法中正确的是? A.编译时将产生错误; B.编译时正确,运行时将产生错误; C.输出零; D.输出空。 12、字符串是Java已定义的类型,关于它的构造函数,下面说法不正确的是:B A.String(char[]value,intoffset,intcount) B.String(int[]codePoints,intoffset,intcount) C.String(Stringoriginal) D.String(StringBufferbuffer) 13、下列说法中正确的是:C A.导入包会影响程序的性能 B.包存储在类库中 C.包是类的容器D.上述说法都不对
JAVA程序设计试卷库(第5套) 一、单选题(每小题 2 分,共 20 分) 1、Java Application源程序的主类是指包含有( A )方法的类。 A. main方法 B. toString方法 C. init方法 D. actionPerfromed方法 2、分析下面的程序段,下面的哪个描述是正确的。( B ) char mychar=’c’; switch(mychar){ default: case ‘a’“a”);break; case ‘b’“b”);break; } A.switch语句块是错误的, 因为switch后面的表达式 值的类型不是整数; B.switch语句块是正确的; C.switch语句块是错误的, 因为default没有放在语 句块的最后面; D.代码运行时,没有任何输出 结果。 3、编译并运行下面的Java程序, 将产生( B )结果。 class A{ int var1=1; int var2; public static void main(String[] args){ int var3=3; A a=new A(); } } A. 0 B. 4 C. 3 D. 代码无法编译,因为var2根本 没有被初始化 4、在Java中,下面关于包的陈述 中正确的是( D )。
A. 包的声明必须是源文件的任意位置; B. 包的声明必须紧跟在import 语句的后面; C. 只有公共类才能放在包中; D. 可以将多个源文件中的类放在同一个包中 5、 在Java 语言中,当一个类的某个变量声明为protected 时下列说法正确的是( C )。 A. 只有同一类中的成员才能访问它; B. 不同包中的任何其他类都能够访问它; C. 同包中的任何其他类能够访问它; D. 不同包中的子类不可以访问该变量。 6、在Java 中,执行下面的语句后,c 的值为( D )。 String s= "Jessica "; char c=s.charAt(6); A. "c " B. "a " C. 'c ' D. 'a ' 7、设有下面两个赋值语句: a = Integer.parseInt(“1024”); b = Integer.valueOf(“1024”).int Value(); 下述说法正确的是( D )。 A .a 是整数类型变量,b 是整数类对象。 B .a 是整数类对象,b 是整数类型变量。 C .a 和b 都是整数类对象并且它们的值相等。 D .a 和b 都是整数类型变量并且它们的值相等。 8、事件剪裁类如WindowAdapter (它实现了WindowListener 接
《JAVA程序设计》期末考试试题(二) 一.判断题 1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)分析: java中没有回收(FREE)内存的功能, 它会自动回收的, 只要把对象close掉就等着回收就行了. 由于对象是使用new运算符动态分配的,java方法是自动为你的处理存储单元重新分配问题。完成这项工作的技术被称为无用单元收集(garbage collection)。它的工作原理:当不存在对一个对象的引用时,我们就假定不再需要那个对象了,那个对象所占有的存储单元可以被收回。在java中并不像在C++中一样需要明确地销毁对象。无用单元收集仅在偶尔执行程序时出现。它不会出现,是因为存在一个或多个不再使用的对象。还有,不同的Java运行时实现将会使用不同的无用单元收集方法,但是在大多数情况下,在编程时不必考虑它。如果一个对象正在持有某些非Java资源,如文件处理或窗口字符字体,那么Java提供了一种称为结束(finalization)的机制。 3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(×) 分析: 不对,JAVA虽然有垃圾回收机制,但是不能在指定的时间释放内存对象,只能在程序运行期间,当虚拟机空闲的时候回收。 4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)分析: 无返回类型 5.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(√) 分析: 个人觉得原因是子类更加具体一些, 可以更好得描述这个异常, 所以会把子类写在前面, 如果把父类写在前面, 那么这个父类就会接受很多的异常了, 后面的子类就接收不到了6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(√) 7.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×) 分析: 左上角被确定为坐标的起点 8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√) 9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。(×) 分析: 并不是生成一个新对象, 只是引用相同而已, 真正的对象的空间是一样的. 二.单项选择题 1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?()A、String args B、String ar[] C、Char arg D、StringBuffer args[] 分析: 比较常见的是String[] args, 但是String args[]也是可以的, ar和args并没有什么区别. 2.以下关于继承的叙述正确的是()。 A、在Java中类只允许单一继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口只允许单一继承 3.paint()方法使用哪种类型的参数? () A、Graphics B、Graphics2D C、String D、Color 分析:这是GUI里面的, 不考.
《J A V A语言程序设计》期末考试模拟试题 一、单选择题(每小题2分,共10分) 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展 名为( B )。 A. .java B. .class C. .html D. .exe 2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方 法来完成一些画图操作。 A. start( ) B. stop( ) C. init( ) D. paint( ) 4、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为 前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。
MyApplet必须是 Applet 类的子类并且存储该源程序文件的文件名为MyApplet 。 3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译 器编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 . class 的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占 用 2 字节内存空间。 5、设 x = 2 ,则表达式 ( x + + )/3 的值是 1 。 6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为 true 和 false 。 7、抽象(abstract)方法方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法方法是不能被当前类的子类重新定义的方法。 8、创建一个名为 MyPackage 的包的语句是 package MyPackag , 该语句应该放在程序的位置为:应该在程序第一句。 9、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。 int s = 0 ; for ( int i = 0 ; i < ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; 10、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。