Java程序设计基础练习题
一、判断题
1、Java不区分大小写的语言。 (N)
2、Java的源代码中定义几个类,编译结果就生成几个以“.class”后缀的字节码
文件。(Y)
3、Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。(Y)
4、Java源程序是由类定义组成的,每个程序可以定义若干个类,但只有一个类是
主类。(Y)
5、Java中数组的元素只能是简单数据类型的量。(N)
6、Java的String类的对象既可以是字符串常量,也可以是字符串变量。(N)
7、一个类只能有一个父类,但一个接口可以有一个以上的父接口。(Y)
8、由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。
(N)
9、Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。(Y)
10、注释的作用是使程序在执行时在屏幕上显示//之后的内容。(N)
11、Java的字符类型采用的是Unicode编码,但所占字节由具体软硬件环境决定。
(N)
12、无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译
后生成的都只有一个名为A的字节码文件。
( N )
13、Java的各种数据类型所占用的内存长度与具体软硬件环境有关。( N)
14、与C语言不同的是,Java语言中的数组元素下标总是从1开始。( N )
15、在Java的方法中定义一个常量要用const关键字。( N )
16、异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。( N )
17、序员可以不必释放已创建的对象,因为Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。( N )
18、ava系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输
出System.out和标准错误输出System.err。( Y )
19、即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参的,函数体为空。( Y )
20、Java中%是取余运算符,要求两端操作数为整型。( N )
21、造函数用于创建类的实例对象,构造函数名应与类名相同,在类中必须定义
构造函数,且只能定义一个构造函数。( N )
22、java的类不允许多重继承,但接口支持多重继承。( Y )
23、谓抽象类就是包含有抽象方法的类。( Y )
24、java语言中的数组元素只能是基本数据类型而不能为对象类型。( N )25.一个线程对象的具体操作是由run()方法的内容确定的,但是Thread类的run()方法是空的,其中没有内容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。( Y )
26.Applet是一种特殊的Panel,它是Java Applet程序的最外层容器。(√)27.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)
28.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)
30.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×)31.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√)33.如果p是父类Parent的对象,而c是子类Child的对象,则语句p=c是正确的。(√)
34.abstract方法所在的类必须是abstract类。(√)
35.java异常处理中可以使用多个catch子句,此时应将高级别异常类的catch子句放在前面。(×)
36.设String对象s="H",运行语句System.out.println(s.concat("ello!"));后String对象s的内容为"Hello!",所以语句输出为"Hello!"。(× )
38.通过继承,父类中的保护成员在派生类中不能被直接访问。( ×)
protect访问权限定义了子类,同包和本类可以访问!
39.接口中的方法一定是抽象方法,变量可以不赋初值。
40.子类继承父类后,如果出现子类的成员变量名和父类的成员变量名同名,那么子类就不继承父类的这个成员变量了。( ×)
41.Java程序是运行在Java虚拟机中的。(√)
42.接口中的方法一定是抽象方法,变量可以不赋初值。( ×)
注:在接口里面搞变量没任何意义,在接口中定义的变量实际上是(假如你定义了个int i,相当于public static final int i,)既然被final修饰了,那么就是常量,不能改值了,继承了他就不能变了,你一改就报错,所以一定要赋值!
43.可以用new来创建一个类的实例,即"对象"。(√)
44.Java程序对计算机硬件平台的依赖性很低。(√)
45.Java中类的构造函数只能有一个。( ×)
46.Java可以用来进行多媒体及网络编程。(√)
47.类的public类型的成员变量不可以被继承。( ×)
48.子类可以继承父类所有的成员变量及成员函数。( ×)
49.Java类中不能存在同名的两个成员函数。( ×)
50.break语句可以用在循环和switch语句中。(√)
51.对象是类的一个实例。(√)
52.用abstract修饰的类必须被继承。(√)
53.类都能有多个构造方法。(√)
54.applet可以运行在浏览器中。(√)
55.用Javac编译Java源文件后得到代码叫字节码。(√)
56.continue语句用在循环结构中表示继续执行下一次循环。(√)
57.实现一个接口,则在类中一定要实现接口中的所有方法。( ×)
58.抽象类不能实例化。(√)
56.在子类的构造函数中,可以把Super()放到任何位置。
57.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。(√)
58.Java语言具有较好的安全性和可移植性及与平台无关等特性。(√)
59.Java语言的源程序不是编译型的,而是编译解释型的。(√)
60.Java Application程序中,必有一个主方法main(),该方法有没有参数都可以。(√)
61.java.util.Scanner(System.in)可以接收用户从键盘输入的简单数据。(√)
62.Java程序中不区分大小写字母。(×)
63.机器不能直接识别字节码文件,它要经过JVM中的解释器边解释边执行。(
64.System类中的println()方法分行显示信息,而print()方法不分行显示信息。(√)
65.当前路径的标识是“.”。(√)
66.java命令不区分大小写,而javac命令区分大小写。(×)
67.printf()和 format()方法使用指定格式字符串和参数,将格式化字符串写入到PrintStream类型的输出流(System.out对象)中。(√)
68.在运行字节码文件时,使用java命令,一定要给出字节码文件的扩展名.clas s。(×)
69.Java语言使用的是Unicode字符集,每个字符在内存中占8位。(×)
70.Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。(
√)
71.所有的变量在使用前都必须进行初始化。(×)
72.已知byte i = (byte)127; i = i +1;这两个语句能被成功编译。(√)
73.String str="abcdefghi"; char chr=str.charAt(9); (×)
74.char[] chrArray={ 'a', 'b', 'c', 'd', 'e', 'f', 'g'}; char chr=ch rArray[6]; (√)
75. int i,j; boolean booleanValue=(i==j); (×)
76. int intArray[]={0,2,4,6,8}; int length=int Array.length();(×)
77.String str="abcedf"; int length=str.length; (×)
78.short shortValue=220; byte byteValue=shortValue; (×)
79.int[] intArray[60]; (×)
80.char[] str="abcdefgh"; (×)
81.说明或声明数组时不分配内存大小,创建数组时分配内存大小。(√)
82.强制类型转换运算符的功能是将一个表达式的类型转换为所指定的类型。(√)
83.类是一种类型,也是对象的模板。(√)
84.类中说明的方法可以定义在类体外。(×)
85.实例方法中不能引用类变量。(×)
86.创建对象时系统将调用适当的构造方法给对象初始化。(√)
87.使用运算符new创建对象时,赋给对象的值实际上是一个引用值。(√)88.对象赋值实际上是同一个对象具有两个不同的名字,它们都有同一个引用值。(√)
89.对象可作方法参数,对象数组不能作方法参数。(×)
90.class是定义类的惟一关键字。(√)
91.Java语言会自动回收内存中的垃圾。(√)
92.子类的成员变量和成员方法的数目一定大于等于父类的成员变量和成员方法的数目。(×)
93.抽象方法是一种只有说明而无具体实现的方法。(√)
94.Java语言中,所创建的子类都应有一个父类。(√)
95.调用this 或super构造方法的语句必须放在第一条语句。(√)
96.一个类可以实现多个接口,接口可以实现“多重继承”。(√)
97.实现接口的类不能是抽象类。(√)
98.使用构造方法只能给实例成员变量赋初值。(√)
99.Java 语言不允许同时继承一个类并实现一个接口。(×)
100.Java语言中,构造方法是不可以继承的。(√)
104.String s = (Double.valueOf("3.1415926")).toString(); (√)105.Integer I = Integer.parseInt("926");(√)
107.在集合中元素类型必须是相同的。(√)
108.集合中可以包含相同的对象。(×)
117.捕获异常try语句后面通常跟有一个或多个catch()方法用来处理try块内生成的异常事件。(√)
118.使用try-catch-finally语句只能捕获一个异常。(×)
119.try-catch语句不可以嵌套使用。(×)
120.Error类所定义的异常是无法捕获的。(√)
121.IOException异常是非运行时异常,必须在程序中抛弃或捕获。(√)122.用户自定义异常类是通过继承Throwable类来创建的。(×)
123.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。(√)
126.所谓线程同步就是若干个线程都需要使用同一个synchronized修饰的方法。(√)
127.使用Thread子类创建线程的优点是可以在子类中增加新的成员变量,使线程具有某种属性,也可以在子类中新增加方法,使线程具有某种功能。但是,Jav a不支持多继承,Thread类的子类不能再扩展其他的类。(√)
128.Java虚拟机(JVM)中的线程调度器负责管理线程,调度器把线程的优先级分为10个级别,分别用Thread类中的类常量表示。每个Java线程的优先级都在常数1和10之间,即Thread.MIN_PRIORITY和Thread.MAX_PRIORITY之间。如果没有明确地设置线程的优先级别,每个线程的优先级都为常数8。(×)129.当线程类所定义的run( )方法执行完毕,线程的运行就会终止。(√)130.线程的启动是通过引用其start()方法而实现的。(√)
131.文件缓冲流的作用是提高文件的读/写效率。(√)
132.通过File类可对文件属性进行修改。(√)
133.IOException必须被捕获或抛出。(√)
134.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出System.out和标准错误输出System.err。(√)
二、填空题
1、根据结构组成和运行环境的不同,Java程序可分为两类: Java Applet 、Java application 。
2、类的修饰符分为 abstract 、 public 。
3、程序中定义类使用的关键字是 class ,每个类的定义由类头定义、类体定义两部分组成,其中类体部分包括属性、方法。
4、Java程序中定义接口所使用的关键字是 interface,接口中的属性都是静态变量,接口中的方法都是抽象方法。
5、 Object 是Java程序中所有类的直接或间接父类,也是类库中所有类的父类。
6、列代码后的结果是什么? int x,a=2,b=3,c=4; x=++a+b+++c++; 10
8、构造函数_______有返回值。
答案:构造函数没有返回值。
9、Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为________和 __________两种具体类型。
答案:float和 double两种具体类型
10、创建类对象的运算符是_______。
答案:new
11、当整型变量n的值不能被13除尽时,其值为 false 的Java语言表达式是_____________ 。
答案:n%13
12、在Java语言中,所有的数组都有一个lenght属性,这个属性存储了该数组的__________。
答案:元素个数
13、定义类就是定义一种抽象的____________,它是所有具有一定共性的对象的抽象描述。
答案:数据类型
14、在Java语言中,使用_____、______等技术,实现软件重用。
答案:继承、多态等技术
15、表达式3/6 * 5的计算结果是________ 。
答案:结果是0
16、下面是一个类的定义:
public class ____________
{
int x, y;
Myclass ( int i, _______) // 构造函数
{
x=i;
y=j;
}
}
答案:Myclass
int j
17、下面是一个Java Application 的主类的定义,其功能是输出所有命令行参数。import java.io.*;
public class MyClass
{
public static void main(String args[ ])
{
if( args.length !=___)
for(int i=0; i < args.length; i++)
System.out.println(___________);
else System.out.println(没有命令行参数);
}
}
args[i]
18、Java的复合数据类型有 : 类、数组和_______等。
答案:接口
19、表达式3/6 * 5的计算结果是________ 。
答案:0
20、定义初值为10的10次方的长整型变量lvar 的语句是:__________________________。
答案:long lvar=Math.pow(10,10)。
21、顺序结构、分支结构(或称选择结构)、____________是结构化程序设计的三种基本流程控制结构。
答案:循环
22、以下方法 m 的功能是求两参数之积的整数部分。
int m ( float x, float y )
{ __________________; }
答案:return Math.round(x),Math.round(y);
23、Java 源程序文件编译后产生的文件称为________文件,其扩展名为___________ 。
答案:字节码文件, .class
24、向对象方法中,类的实例称为____。答案:对象
25、java源文件中最多只能有一个____类,其他类的个数不限。答案:public
26、java中所有实现的多维数组,实际上是由一维数组构成的____。答案:数组的数组
27、下列程序的运行结果是 26
class A{
class Dog{
private String name;
private int age;
public int step;
Dog(String s,int a)
{
name=s;
age=a;
step=0;
}
public void run(Dog fast)
{
fast.step++;
}
}
public static void main (String args[])
A a=new A();
Dog d=a.new Dog("Tom",3);
d.step=25;
d.run(d);
System.out.println(d.step);
}
}
1.已知:int a =8,b=6; 则:表达式++a-b++的值为(3)。
2.已知:boolean b1=true,b2; 则:表达式! b1 && b2 ||b2的值为(f alse)。
3.已知:double x=8.5,y=5.8; 则:表达式x++>y--值为(true)。
4.已知:int a[ ]={2,4,6,8}; 则:表达式(a[0]+=a[1])+ ++a[2]值为(13)。
5.执行int x, a = 2, b = 3, c = 4; x = ++a + b++ + c++; 结果是(x=10,a=3,b=4,c=5)。
6.Java中的显式类型转换既能(从低类型向高类型转换)也能从高类型向低类型转换,而隐式类型转换只有前者。
7.在Java中,字符串和数组是作为(对象)出现的。
8.执行下列程序代码的输出结果是(10,11,11)。
int a = 10; int i, j; i = ++a; j = a--;
System.out.printf("%d,%d,%d", a, i, j);
9.执行完boolean x=false; boolean y=true; boolean z=(x&&y)&&(!y) ; int f=z==false?1:2;
这段代码后,z与f的值分别是(false)和(1)。
1.类是一组具有相同(属性)和(行为)的对象的抽象。(实例)是由某个特定的类所描述的一个个具体的对象。
2.(接口)只描述系统所提供的服务,而不包含服务的实现细节。
7.构造方法的方法名与(类名)相同,若类中没有定义任何的构造方法,则运行时系统会自动为该类生成一个(默认构造)方法。
8.在方法体内定义的变量是(局部变量),其前面不能加(public),且必须(初始化)。
9.数组元素作实参时对形参变量的数据传递是(单向值传递),数组名作实参时对形参变量的数据传递是(双向引用传递)。
10.对象作方法形参时,方法实参也用对象,实现(引用)调用。
11.(new)是一个特殊的方法,用于创建一个类的实例。
12.对象拷贝有(对象引用复制)、(浅复制)和(深复制)三种。
13.(类)方法不能直接访问其所属类的(实例)变量和(实例)方法,只可直接访问其所属类的(类)变量和(类)方法。
14.(类)变量在内存中只有一个拷贝,被该类的所有对象共享;每当创建一个实例,就会为(实例)变量分配一次内存,(实例)变量可以在内存中有多个拷贝,互不影响。
15.Java使用固定于首行的(package)语句来创建包。
16.在运行时,由java解释器自动引入,而不用import语句引入的包是(j https://www.360docs.net/doc/6011066246.html,ng)。
17.发布Java应用程序或类库时,通常可以使用JDK中自带的(JAR)命令打包。
1.在面向对象系统中,消息分为(公有消息)和(私有消息)两类。
2.类的访问控制符有(public)和(默认default)两种,(public)类具有跨包访问性而(default)类不能被跨包访问。
3.类成员的访问控制符有(public)、(protected)、(private)和默认四种。
4.public类型的类成员可被(同一类)、同一包中的(子类与非子类)和不同包中的(子类与非子类)的代码访问引用。
5.protected类型的类成员可被(同一类)、同一包中的(子类与非子类)和不同包中的(子类)的代码访问引用。
6.default类型的类成员只能被(同一类)、同一包中的(子类与非子类)的代码访问引用。
7.private类型的类成员只能被其所在类中的代码访问引用,它只具有(类)域访问性。
8.系统规定用(this())表示当前类的构造方法,用(super())表示直接父类的构造方法,在构造方法中两者只能选其一,且须放在第一条语句。
9.若子类和父类在同一个包中,则子类继承父类中的(public)、(protec ted)和(默认)成员,将其作为子类的成员,但不能继承父类的(private)成员。
10.若子类和父类不在同一个包中,则子类继承了父类中的(public)和(p rotected)成员,将其作为子类的成员,但不能继承父类的(默认)和(private)成员。
11.(子类对象)直接赋值给(父类对象)时,子类对象可自动转换为父类对象,(父类对象)赋值给(子类对象)时,必须将父类对象强制转换为子类对象。
12.Java的多态性主要表现在(方法重载)、(方法覆盖)和(变量覆盖)三个方面。
13.重写后的方法不能比被重写的方法有(更严格)的访问权限,重写后的方法不能比被重写的方法产生更多的异常。
14.Java语言中,定义子类时,使用关键字(extends)来给出父类名。如果没有指出父类,则该类的默认父类为(Object类)。
15.Java语言中,重载方法的选择是在编译时进行的,系统根据(参数个数)、(参数类型)和参数顺序寻找匹配方法。
16.实现接口中的抽象方法时,必须使用(完全相同)的方法头,并且还要用(public)修饰符。
17.接口中定义的数据成员均是(常量数据成员),所有成员方法均为(抽象方法)方法,且没有(构造)方法。
18.this代表(当前对象自身)的引用,super表示的是当前对象的直接父类对象。
19.如果一个类包含一个或多个abstract方法,则它是一个(abstract)类。
20.Java不直接支持多继承,但可以通过(接口)实现多继承。类的继承具有(传递)性。
21.没有子类的类称为(最终类),不能被子类重载的方法称为(最终方法),不能改变值的量称为常量,又称为(最终变量)。
23.接口中只能包含(public static final)类型的成员变量和(public a bstract)类型的成员方法。
24.一般地,内部类又分为定义在方法体外的(成员类)和定义在方法体内的(局部类)两种。
25.静态内部类可直接通过外部类名引用,其一般格式是(new 外部类名.内部类构造方法( );)。
26.匿名类一般分为(语句匿名类)和(参数匿名)类两种。
27.面向对象的软件设计中,根据目的不同模式可分为(创建型)、(结构型)和(行为型)三种。
3、选择题
1、关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是(B )
(A) 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
(B)可以被两种类访问和引用:该类本身、该类的所有子类
(C)只能被该类自身所访问和修改
(D)只能被同一个包中的类访问
2、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(A )
(A) 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
(B) 可以被两种类访问和引用:该类本身、该类的所有子类
(C) 只能被该类自身所访问和修改
(D) 只能被同一个包中的类访问
3、下列关于修饰符混用的说法,错误的是( D)
(A) abstract不能与final并列修饰同一个类
(B) abstract中不可以有private的成员
(C) abstract方法必须在abstract类中
(D) static方法中能处理非static的属性
4、以下标识符中哪项是不合法的 (D)
(A) BigOlLong$223 (B) _utfint (C) $12s (D) 3d
5、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B)
(A) public static void main
(B) public static void main(String[] args)
(C) public static int main(String[] args)
(D) public void main(String args[])
6、完以下代码int[] x = new int[5];后,以下哪项说明是正确的(A )
(A) x[4]为0 (B) x[4]未定义 (C) x[5]为0 (D) x[0]为空
7、以下代码段执行后的输出结果为( C)
int x=3; int y=8;System.out.println(y%x);
(A) 0 (B) 1 (C) 2 (D) 3
8、以下哪个表达式是不合法的( B)
(A) String x = “Sky”; int y = 5; x += y;
(B) String x = “Sky”; int y = 5; if(x==y){}
(D) String x = null; int y=(x!=null) && (x.length()>0)?x.length:0
9、编译运行以下程序后,关于输出结果的说明正确的是( C)
public class Conditional{
public static void main(String args[]){
int x = 2;
System.out.println(“value is “((x<1)?2.2:2));
}
}
(A) 输出结果为:value is 22.2 (B) 输出结果为:value is 2
(C) 输出结果为:value is 2.0 (C) 编译错误
10、以下声明合法的是( B)
(A) default String s; (B) public final static native int w()
(C) abstract double d; (C) abstract final double hyperbolicCosine()
11、关于以下application的说明,正确的是( C)
1. class StaticStuff
2. {
3. static int x=15;
4. static {x*=3;}
5. public static void main(String args[])
6. {
7. System.out.println(“x=”+x);
8. }
9. static {x/=3;}
}
(A) 4行与9行不能通过编译,因为缺少方法名和返回类型
(B) 9行不能通过编译,因为只能有一个静态初始化器
(C) 编译通过,执行结果为:x=15
(D) 编译通过,执行结果为:x=3
12、关于以下程序代码的说明正确的是( C)
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. System.out.println(“x = ”+x);
11. }
12. }
(A) 5行不能通过编译,因为引用了私有静态变量
(B) 10行不能通过编译,因为x是私有静态变量
(C) 程序通过编译,输出结果为: x=103
(D) 程序通过编译,输出结果为:x=100
(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);
14、类Text1定义如下:(B)
public class Test1{
public float aMethod(Float a, float b){}
***
}
将以下哪种方法插入行 *** 是不合法的。()
(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) public float aMethod(int a,int b,int c){}
15、创建字符串s: s=new String(“xyzy”);以下哪条语句将改变s( D)
(A) s.append(“a”) (B) s.concat(s)
(C) s.substring(3) (D) 以上语句都不会
16、关于以下程序段,正确的说法是( B)
String s1 = “ac”+ “def”;
Strimg s2 = new String(s1);
if(s1.equals(s2))
System.out.println(“==succeeded”);
if(s1==s2)
System.out.println(“.equals() succeeded”);
(A) 行4与行6都将执行 (B)行4执行,行6不执行
(C) 行6执行,行4不执行 (D) 行4、行6都不执行
17、关于以下代码段的说法正确的是(D )
String s = “abcde”;
StringBuffer s1 = new StringBuffer(“abcde”);
if(s.equals(s1))
s1 = null;
if(s1.equals(s))
(A) 第1行编译错误,String的构造器必须明确调用
(B) 第3行编译错误,因为s1与s2有不同的类型
(C) 编译成功,但执行时在第5行有异常抛出
(D) 编译成功,执行过程中也没有异常抛出
18、以下说法哪项是正确的( A)
class MyListener extends MouseAdapter implements MouseListener{
public void mouseEnter(MouseEvent mev){
System.out.println(“Mouse entered.”);
}
}
(A) 以上代码可通过编译
(B) 不能通过编译,因为没有实现MouseListener接口中的所有方法
(C) 不能通过编译,因为类头定义不能分行
(D) 能通过编译,若组件用该类作为Mouse的监听者并且接收了mouse-exited事件,则在执行过程中会抛出异常
19、关于以下程序段的说法,正确的是( A)
1. class MyListener implements
2. ActionListener,ItemListener{
3. public void actionPerformed(ActionEvent ae){
4. System.out.println(“Action”);}
5. public void itemStateChanged(ItemEvent ie){
6. System.out.println(“Item”);
7. }
8. }
(A) 可通过编译
(B) 第2行产生编译错误
(C) 第3行产生编译错误
(D) 第5行产生编译错误
20、Java application中的主类需包含main方法,main方法的返回类型是什么?( D )
A、int
B、float
C、double
D、void
21、有以下方法的定义,请选择该方法的返回类型( D )。
ReturnType method(byte x, double y)
{
return (short)x/y*2;
}
A、byte
B、short
C、int
D、double
22、以下哪个不是Java的关键字?( A )
A、TRUE
B、B、const
C、super
D、void
23、有程序如下,关于程序的描述哪个是正确的?( A )
public class Person{
static int a[] = new int[10];
public static void main(String a[])
}
A、编译将产生错误
B、编译时正确,但运行时将产生错误
C、正确,输出0
D、正确,输出 null
24、以下关于构造函数的描述错误的是( A )。
A、构造函数的返回类型只能是void型。
B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
25、有语句String s=”hello world”; ,以下操作哪个是不合法的?( B )
A、int i=s.length();
B、s>>>=3;
C、String ts=s.trim();
D、String t=s+”!”;
26、欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?(B)
A、ArrayList myList=new Object()
B、List myList=new ArrayList()
C、ArrayList myList=new List()
27、指出正确的表达式(C)
A、 byte=128;
B、Boolean=null;
C、 long l=0xfffL;
D、 double=0.9239d;
28、指出下列程序运行的结果(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';
}
}
A、 good and abc
B、good and gbc
C、 test ok and abc
D、test ok and gbc
29、运行下列程序, 会产生什么结果(A)
public class X extends Thread implements Runable{
System.out.println("this is run()");
}
public static void main(String args[])
{
Thread t=new Thread(new X());
t.start();
}
}
A、第一行会产生编译错误
B、第六行会产生编译错误
C、第六行会产生运行错误
D、程序会运行和启动
30、指出下面代码那个结论是正确的?(C)
public class Person{
static int arr[] = new int[10];
public static void main(String a[])
{
System.out.println(arr[1]);
}
}
A、编译时将产生错误;
B、编译时正确,运行时将产生错误;
C、输出零;
D、输出空。
31、下列哪些语句关于内存回收的说明是正确的? (B)
A、程序员必须创建一个线程来释放内存;
B、内存回收程序负责释放无用内存
C、内存回收程序允许程序员直接释放内存
D、内存回收程序可以在指定的时间释放内存对象
32、下列代码哪几行会出错: (C)
1) public void modify() {
2) int I, j, k;
3) I = 100;
4) while ( I > 0 ) {
5) j = I * 2;
6) System.out.println (" The value of j is " + j );
7) k = k + 1;
8) I--;
9) }
10) }
A、 line 4
B、 line 6
C、 line 7
D、 line 8
33、Java application中的主类需包含main方法,main方法的返回类型是什么?( D )
A、int
B、float
C、double
D、void
34、以下标识符中哪项是不合法的( A )
A、const
B、$double
C、hello
D、BigMeaninglessName
35、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( C )。
A、隐藏
B、覆盖
C、重载
D、Java不支持此特性
36、以下关于构造函数的描述错误的是()。
A、构造函数的返回类型只能是void型。
B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
37、以下关于继承的叙述正确的是( A )。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承
38、有以下方法的定义,请选择该方法的返回类型( D )。
ReturnType method(byte x, double y)
{
return (short)x/y*2;
}
A、byte
B、short
C、int
D、double
39、有以下程序片段,下列哪个选项不能插入到行1。( D )
1.
2.public class Interesting{
3.//do sth
4. }
A、import java.awt.*;
B、package mypackage;
C、class OtherClass{ }
D、public class MyClass{ }
40、以下哪项是接口的正确定义?( B )
A、interface B
{ void print() { } ;}
B、abstract interface B
{ void print() ;}
C、abstract interface B extends A1,A2 //A1、A2为已定义的接口
{ abstract void print(){ };}
{ void print();}
41、下面哪个函数是public void aMethod(){...}的重载函数?( D )
A、void aMethod( ){...}
B、public int aMethod(){...}
C、public void aMethod ( ){...}
D、public int aMethod ( int m){...}
42、A派生出子类B ,B派生出子类C,并且在Java源代码中有如下声明:
(1)A a0=new A();
(2)A a1 =new B();
(3)A a2=new C();
问以下哪个说法是正确的?()
A、只有第(1)行能通过编译
B、第(1)、(2)行能通过编译,但第3行编译出错
C、第(1)、(2)、(3)行能通过编译,但第2、3行运行时出错
D、第(1)行、第(2)行和第(3)行的声明都是正确的
43、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( D )
class A
{ int i;
static String s;
void method1() { }
static void method2() { }
}
A、System.out.println(a.i);
B、a.method1();
C、A.method1();
D、A.method2()
44、有如下代码段:
1)
2) { if(unsafe()){//do something…}
3) else if(safe()){//do the other…}
4) }
其中,方法unsafe() 将抛出IOException, 请问可将以下哪项填入第1行?( D )
A、public IOException methodName()
B、public void methodName()
C、public void methodName() throw IOException
D、public void methodName() throws IOException
45、下列语句序列执行后,k 的值是( )。
int m=3, n=6, k=0;
while( (m++) < ( -- n) ) ++k;
A) 0 B) 1 C) 2 D) 3
答案:B
46、设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( )。
A) i = i + 2 B) a[0] = 7;
C) i++ - --j; D) a(0) = 66;
答案:B
47、Java语言的类间的继承关系是( )。
A) 多重的 B) 单重的 C) 线程的 D) 不能继承
答案:B
48、设有定义 int i = 6 ;,则执行以下语句后,i 的值为( )。
i += i - 1;
A) 10 B) 121 C) 11 D) 100
答案:C
49、下列选项中,用于在定义子类时声明父类名的关键字是( )。
A)interface B) package C) extends D) class
答案:C
50、若已定义 byte[ ] x= {11,22,33,-66} ;
其中0≤k≤3,则对x数组元素错误的引用是( )。
A) x[5-3] B) x[k] C) x[k+5] D) x[0]
答案:C
51、下列语句序列执行后,ch1 的值是( )。
char ch1='A',ch2='W';
if(ch1 + 2 < ch2 ) ++ch1;
A) ‘A' B) ‘B' C) ‘C' D) B
答案:B
52、下列语句序列执行后,i 的值是( )。
int i=8, j=16;
if( i-1 > j ) i--; else j--;
A) 15 B) 16 C) 7 D) 8
答案:A
53、下列语句序列执行后,k 的值是( )。
int i=10, j=18, k=30;
switch( j - i )
{ case 8 : k++;
case 9 : k+=2;
case 10: k+=3;
default : k/=j;
}
A) 31 B) 32 C) 2 D) 33
答案:A
54下面语句执行后,i 的值是( )。
for( int i=0, j=1; j < 5; j+=3 ) i=i+j;
答案:B
55、设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true 的是( )。
A) x > y || x > z B) x != y
C) z > ( y + x ) D) x < y & ! ( x < z )
答案:B
56、下列语句序列执行后,i的值是( )。
int i=16;
do { i/=2; } while( i > 3 );
A) 16 B) 8 C) 4 D) 2
答案:D
57、以下由 for 语句构成的循环执行的次数是( )。
for ( int i = 0; true ; i++) ;
A) 有语法错,不能执行 B) 无限次
C) 执行1次 D) 一次也不执行
答案:B
58、定义类头时能使用的修饰符是( )。
A) private B) static C) abstract D) protected
答案:C
59、设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值,
正确的switch语句是( )。
A) switch (x + y) B) switch ( ch + 1 )
{ ...... } { ...... }
C) switch ch D) switch ( a + b );
{ ...... } { ...... }
答案:D
60、下列最终属性 i 的定义中,正确的是( )。
A) static final int i=100; B) final int i=1.2;
C) final i='w'; D) final char i;
答案:A
61、下列类定义中,不正确的是( )。
A) class x { .... }
B) class x extends y { .... }
C) static class x implements y1,y2 { .... }
D) public class x extends Applet { .... }
答案:C
62、设 x、 y为已定义的类名,下列声明x类的对象x1的语句中正确的是( )。
A) static x x1; B) public x x1=new x(int 123);
C) y x1; D) x x1=x( );
答案:B
63、设 i、j、k 为类 x 中定义的 int 型变量名,下列类 x 的构造函数中不正确的是( )。
A) x( int m){ ... } B) void x( int m){ ... }
C) x( int m, int n){ ... } D) x( int h,int m,int n){ ... }
64、下列方法定义中,正确的是( )。
A) int x( ){ char ch='a'; return (int)ch; }
B) void x( ){ ...return true; }
C) int x( ){ ...return true; }
D) int x( int a, b){ return a+b; }
答案:A
65、用于定义类成员的访问控制权的一组关键字是( )。
A) class, float, double, public
B) float, boolean, int, long
C) char, extends, float, double
D) public, private, protected
答案:D
66、不能构成循环的语句是( )。
A) for 语句 B) while 语句 C) switch 语句 D) do__while 语句
答案:C
67、函数重载是指 ()
A.两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
B.两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
C.两个以上的函数名字不同,但形参的个数或类型相同
D.两个以上的函数取相同的函数名,并且函数的返回类型相同
68、指出下列程序运行的结果( )
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″);
System.out.print(ex.ch);
}
public void change(String str,char ch[]){
str=″test ok″;
ch[0]=′g′;
}
}
A.good and abc
B.good and gbc
C.test ok and abc
D.test ok and gbc
答案:B
69、构造方法何时被调用( )
A.类定义时
B.创建对象时
C.调用对象方法时
D.使用对象的变量时
答案:B
70、在异常处理中,如释放资源、关闭文件、关闭数据库等由( )来完成。
A.try子句
B.catch子句
C.finally子句
D.throw子句
71、运行下列程序的结果是( )
abstract class MineBase{
abstract void amethod();
static int i;
}
public class Mine extends MineBase
{
public static void main(String argv[]){
int[] ar=new int[5];
for(i=0;i System.out.println(ar[i]);
}
}
A.打印5个0
B.编译出错,数组ar[]必须初始化
C.编译出错,Mine应声明为abstract
D.出现IndexOutOfBoundes的例外答案:C
72、在Java中,不属于整数类型变量的是( )
A.double
B.long
C.int
D.byte
答案:A
73、Java虚拟机的执行过程有多个特点,下列哪个特点不属于JVM执行特点( )
A.多线程
B.动态连接
C.异常处理
D.异步处理
答案:D
74、当方法遇到异常又不知如何处理时,下列哪种说法是正确的( )
A.捕获异常
B.抛出异常
C.声明异常
D.嵌套异常
答案:B
75、Java程序的执行过程中用到一套JDK工具,其中java.exe是指( )
A.Java文档生成器
B.Java解释器
C.Java编译器
D.Java类分解器
答案:B
76、Java变量中,以下不属于复合类型的数据类型是( )
A.类
B.字符型
C.数组型
D.接口
答案:B
77、11.在Java中,负责对字节代码解释执行的是____。
A、垃圾回收器
B、虚拟机
C、编译器
D、多线程机制
答案:B
78、下列叙述中,正确的是____。
A、Java语言的标识符是区分大小写的
B、源文件名与public类名可以不相同
C、源文件名其扩展名为.jar
D、源文件中public类的数目不限
答案:A
79、下列属于合法的Java标识符是____。
A、_cat
B、5books
C、+static
D、-3.14159
《JAVA程序设计》试卷含答案
《JAVA 程序设计》试卷 《JAVA 程序设计》试卷 第1页,共6页 第2页,共6页 Java 程序设计 一、 填空题(要求将答案写在空白处,共11道小题,每空1分,共20分) 1、Java 的三大体系分别是______、______、______。 2、Java 程序的运行环境简称之为______。 3、Java 中的程序代码都必须在一个类中定义,类使用______关键字来定义。 4、布尔常量即布尔类型的两个值,分别是______和______。 5、在Java 中,byte 类型数据占______个字节,short 类型数据占______个字节,int 类型数据占______个字节,long 类型数据占______个字节。 6、若x = 2,则表达式 ( x + + )/3 的值是______。 7、若int a =2; a+=3;执行后,变量a 的值为______。 8、若int []a={12,45,34,46,23}; ,则a[2]= ______。 9、若int a[3][2]={{1,1},{2,2},{3,3}},则a[2][1]= ______。 10、 面向对象的三大特征是______、______和______。 11、 定义在类中的变量被称为______,定义在方法中的变量被称为______ 二、 选择题(将正确答案写在括号内,注意没有在题目中特别说明的均为单选题, 共10题,每题2分,共20分) 1、以下选项中,哪个用来编译源程序 A 、Javadoc B 、Java 运行工具 C 、Java 编译器 D 、Java 打包工具 2、Java 属于以下哪种语言? A 、机器语言 B 、 汇编语言 C 、高级语言 D 、以上都不对 3、下面哪种类型的文件可以在Java 虚拟机中运行? A 、.java B 、.jre C 、class D 、.exe 4、以下选项中,switch 语句判断条件可以接收的数据类型有哪些? (多选) A 、int B 、byte C 、char D 、short 5、假设int x = 2,三元表达式 x>0?x+1:5 的运行结果是以下哪一个? A 、0 B 、2 C 、3 D 、5 6、下面的运算符中,用于执行除法运算是哪个? A 、% B 、\ C 、/ D 、* 7、下列语句哪些属于循环语句?(多选) A 、for 语句 B 、if 语句 C 、while 语句 D 、switch 语句 8、下面哪种写法可以实现访问数组arr 的第1个元素? A 、arr[0] B 、arr(0) C 、arr[1] D 、arr(1) 9、以下哪个选项可以正确创建一个长度为3的一维数组? A 、 new int [2]; B 、 new int[3][]; C 、 new int[3]; D 、 以上答案皆不对 10、请先阅读下面的代码。 int x = 1; int y = 2; if (x % 2 == 0) { y++; } else { y--; } System.out.println("y=" + y); 上面一段程序运行结束时,变量y 的值为下列哪一项? A 、3 B 、2 C 、1 D 、switch 语句 三、程序阅读题(要求将分析结果写在答题纸上,共4道小题,每题5分,共20分) 阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。 代码一: public class Test01 {
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程序设计期末考试试题、试卷、习题A卷 一、选择题。本题共20小题,每题2分,满分40 分。 1、在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行……… () A)init() B)start() C)destroy() D)stop() 2、有以下方法的定义,请选择该方法的返回类型() ReturnType method(byte x, double y) { return (short)x/y*2; } A)byte B)short C)int D)double 3、以下哪项可能包含菜单条()。 A)Panel B)Frame C)Applet D)Dialog 4、Java application中的主类需包含main方法,main方法的返回类型是什么?()A)int B)float C)double D)void 5、Java application中的主类需包含main方法,以下哪项是main方法的正确形参?( ) A)String args B)String ar[] C)Char arg D)StringBuffer args[] 6、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A). java B) .class C) . html D) .exe 7、设int型变量x = 1 , y = 2 , z = 3,则表达式y+=z--/x++ 的值是( )。 A)3 B)3. 5 C)4 D)5 8、不允许作为类及类成员的访问控制符的是( )。 A)public B)private C)static D)protected 9、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A)static void method( ) B)public void method( ) C)final void method( ) D)abstract void method( ) 10、以下哪一个不是JAVA的标准数据流( )。 A)标准输出数据流B)标准输入数据流C)标准错误数据流D)标准运算数据流 11.设有下面两个赋值语句:( ) a = Integer.parseInt(“123”); b = Integer.valueOf(“123”).intValue(); 下述说法正确的是()。 A)、a是整数类型变量,b是整数类对象。B)、a是整数类对象,b是整数类型变量。C)、a和b都是整数类对象并且值相等。D)、a和b都是整数类型变量并且值相等。 12、下列代表十六进制整数的是( ) A)0123 B)1900 C)fa00 D)0xa2
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程序设计试卷一
浙江工商大学2006/2007学年第一学期考试试卷课程名称:Java程序设计考试方式:闭卷完成时限:120分钟班级名称:学号:姓名:题号一二三四五六七八九十总分分值 得分 阅卷人 一、选择题(每题2分,共30分) 1、Java程序的执行过程中用到一套JDK工具,其中java.exe是指B。 A.Java文档生成器 B.Java解释器 C.Java编译器 D.Java类分解器 2、Java语言中,下列标识符错误的是D。 A.—sys1 B.&—m C.I D.40name 3、下列语句执行后,变量a、c的值分别是B。 int x=182; int a,c; c=x/100; a=x%10; A)1,2B)2,1C) 1.82,2D)100,82 4、应用程序的main方法中有以下语句,则输出的结果是A。 String s1="0.5",s2="12"; double x=Double.parseDouble(s1); int y=Integer.parseInt(s2); System.out.println(x+y); A)12.5B)120.5C)12D)“12.5” 5、下列程序段执行后的结果是A。 String s=new String("abcdefg");
for(int i=0;i 题目:古典问题:有一对兔子,从出生后第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); } } 第3章Java程序流程控制 实验1 三种基本程序结构 【实验目的】 (1)掌握Java中顺序语句、选择语句及循环语句的使用。 (2)熟练掌握用三种基本程序结构及相关的变量、表达式、运算符及有关类的方法来解决问题的思想。 【实验要求】 (1)设置MyEclipse的当前工作空间为D:\java。 (2)在MyProject3项目中创建GuessNumber类,并实现猜数游戏。 (3)编写程序WhileLoop实现用while结构求0~100整数数字之和。 (4)编写程序DoWhileLoop实现用do-while结构求0~100整数数字之和。 (5)编写程序ForLoop实现用for结构求0~100整数数字之和。 (6)求三个数中的最大值和最小值。 【实验内容】 (1)启动MyEclpise并设置MyEclipse的工作空间为D:\java。 (2)创建MyProject3项目并在该项目创建GuessNumber类,实现猜数游戏。利用Math.random()方法产生1~100的随机整数,利用JOptionPane.showInputDialog()方法产生一个输入对话框,用户可以输入所猜的数。若所猜的数比随机生成的数大,则显示“猜大了,再输入你的猜测:”;若所猜的数比随机生成的数小,则显示“猜小了,再输入你的猜测:”;若所猜的数正好为随机生成的数,则显示“猜对了!”。 (3)在MyProject3项目中创建WhileLoop类,用while结构求0~100的整数数字之和。 (4)在MyProject3项目中创建DoWhileLoop类,用do -while结构求0~100的整数数字之和。 (5)在MyProject3项目中创建ForLoop类,用for结构求0~100的整数数字之和。 (6)在MyProject3项目中创建MaxMinDemo类,求给定三个数中的最大值和最小值并输出这两个值。 【实验步骤】 1.设置MyEclipse的工作空间为D:\java (1)单击【开始】|【所有程序】|【MyEclipse】|【MyEclipse 8.5】选项启动MyEclipse。 (2)在出现的当前工作空间设置对话框中输入“D:\java”,并按【OK】按钮进入MyEclipse 工作界面。 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类类型 程序的流程控制与实现 一.复习提问,引入新课: 复习提问不同数据类型的知识点,再引入关于流程控制的知识点,顺序语句、条件语句、循环语句。 二.新课教学: 1.1编写与运行包含顺序结构的Java程序 【任务1】通过键盘输入3次密码且判断是否正确 【任务描述】 编写Java程序通过键盘先后输入3次密码,判断是否正确且输出判断结果。 【知识必备】 1.顺序结构 有些简单的程序是按程序中语句的先后顺序依次执行,这种结构称为顺序结构。顺序结构简单易懂,符合人们的编写和阅读习惯。顺序控制结构是计算机程序最基本的结构,它表示由上至下、按语句出现的先后次序执行,语句的执行顺序与语句书写顺序一致。 2.Scanner类 Java 5添加了java.util.Scanner类,这是一个用于扫描输入文本的实用方法,Scanner类用于接受键盘输入,但它不属于I/O流。 【任务实现】 在NetBeans集成开发环境中创建项目Unit03,在项目Unit03中创建类Java3_1,在该类中程序代码。 1.2编写与运行包含选择结构的Java程序 1.2.1编写与运行包含if语句的Java程序 【任务2】判断商品的当前库存数量是否足够 【任务描述】 编写Java程序应用if语句判断表A-1中所购商品“海信 LED55EC520UA”的当前库存数量是否足够? 【知识必备】 1.if语句的语法格式 if语句的语法格式如下所示: if (条件表达式) 语句块; 2.if语句的使用说明 if语句括号中的条件表达式只能为逻辑表达式,如果条件表达式的值为true,则先执行语句块,然后顺序执行if-else后面的语句;否则,不执行语句块,直接执行if-else后面的语句,此时该if语句没有实质作用。 语句可以为单条词句,也可以为用{}括起来的复合语句。 【任务实现】 在项目Unit03中创建类Java3_2,在该类中输入程序代码。 【任务2】的程序代码 /*程序名称:Java3_2.java */ 程序代码 public class Java3_2 { public static void main(String[] args) { int stockNumber; int saleNumber; String productName="海信LED55EC520UA"; stockNumber = 8; saleNumber = 10; if (stockNumber 学院 数计 卷教师 叶锋 系主任签名 制卷份数 专业 电信、通信、光电 班级编号 B07073011、07073021、07073031 江汉大学2009——2010学年第 1学期 考 试 试 卷 课程编号: 课程名称: JAVA 程序设计(1) 试卷类型: 卷 考试时间:120 分钟 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共30分) 1、 一个Java 程序运行从上到下的环境次序是( C )。 A. 操作系统、Java 程序、JRE/JVM 、硬件 B. JRE/JVM 、Java 程序、硬件、操作系统 C. Java 程序、JRE/JVM 、操作系统、硬件 D. Java 程序、操作系统、JRE/JVM 、硬件 2、下面哪些是合法的标识符。(A ) A. persons B. 12345 C. *point D. this 3、以下说法正确的是( B )。 A.一个可直接运行的Java 源文件中可以有多个public 类,其中必须有一个和文件同名 B.一个可直接运行的Java 源文件中可以没有public 类 C.一个可直接运行的Java 源文件中只能有一个且和文件同名的public 类。 D. 一个可直接运行的Java 源文件中可以有多个public 类,且可以没有和文件同名的类。 4、在java 中定义常量的正确语法为( C )。 A . int value=20; B. const int V ALUE=20; C. final int V ALUE=20; D. int V ALUE=20; 5、下面代码的运行输出结果是( A )。 public class example { public static void main(String args[]) { int x=0; if (x>0) x=1; switch (x) 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)》试题B 卷试卷说明:闭卷考试,时间120分钟。一、填空(本题共15空,每空2分,共30分)1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生________个文件名与类名相同扩展名为_______的字节码文件。2.Java 中所有类都是类__Object__的子类。3.请填出在java .lang 包中与下列基本数据类型相对应的封装类:float :java .lang .Float ,char :_______,boolean :________。4.被关键字_________修饰的方法是不能被当前类的子类重新定义的方法5.线程的四种状态是_______、__、_、____。6.java 语言中_____是所有类的根。7.Swing 的事件处理机制包括___、事件和事件处理者。8.URL__________是的缩写。9.java 有两类应用程序java Application 和__________。10.转义字符以_____开头。二、选择(本题共20小题,每题2分,共40分)1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的?()A 、ArrayList myList=new Object ();B 、List myList=new ArrayList ();C 、ArrayList myList=new List ();D 、List myList=new List ();2.paint()方法使用哪种类型的参数?()A 、Graphics B 、Graphics2D C 、String D 、Color 3.指出正确的表达式()A 、byte=128;B 、Boolean=null;C 、long l=0xfffL;D 、double=0.9239d;4.指出下列程序运行的结果()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[]){ch[0]='g';}}B 、good and abc B 、good and gbc C 、test ok and abc D 、test ok and gbc 5.运行下列程序,会产生什么结果()public class X extends Thread implements Runable{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 、程序会运行和启动6.要从文件"file .dat"文件中读出第10个字节到变量C 中,下列哪个方法适合?()A 、FileInputStream in=new FileInputStream("file .dat");in .skip(9);int c=in .read();B 、FileInputStream in=new FileInputStream("file .dat");in .skip(10);int c=in .read();C 、FileInputStream in=new FileInputStream("file .dat");int c=in .read();D 、RandomAccessFile in=new RandomAccessFile("file .dat");in .skip(9);int c=in .readByte();7.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?()A 、CardLayout B 、FlowLayout C 、BorderLayout D 、GridLayout 8.给出下面代码:public class Person{static int arr[]=new int[10];public static void main(String a[]){System .out .println(arr[1]);}}那个语句是正确的?()A 、编译时将产生错误;B 、编译时正确,运行时将产生错误;C 、输出零;D 、输出空。9.下列那个是反斜杠的正确表示?()A 、\\B 、*\\C 、\’D 、\’\’10.下列哪些语句关于内存回收的说明是正确的?()A 、程序员必须创建一个线程来释放内存;题号一二三四五六七八九总分得分得分得分 1.Java程序设计基础 实训项目一:Java开发环境安装与使用(2学时) 实训内容: (1)下载并安装JDK; (2)安装Java集成开发环境JCreator; (3)第1个java程序“Hello World”程序的编辑、编译与运行。 实训要求: 掌握Java开发环境的安装与配置,了解JCreator中ConfigureàoptionsàJDK Profiles的设置;掌握Java应用程序的编写、编译、运行过程。 实训项目二:Java基础应用(2学时) 实训内容: 编写简单的Java程序,将多种类型变量通过各种运算符组成不同的表达式,并将运算结果赋值给同类型的变量,使用print方法输出各变量的值。 实训要求: 掌握Java语言的各种数据类型;熟悉运算符和表达式的用法;学会编写完成一定目标的简单程序。 实训项目三:Java流程控制(2学时) 实训内容: (1)使用分支语句编写简单的Java程序,完成对某个实际问题的判断处理。 (2)使用循环语句编写简单的Java程序,解决需要重复处理的实际问题。 实训要求: 掌握条件语句的使用;掌握循环语句的使用;锻炼运用所学的知识解决实际问题的能力;了解常用的累加和、数学函数图形打印等基本问题的解决方法。 实训项目四:数组(2学时) 实训内容: (1)编写简单的Java程序,验证数组的声明、创建和使用。 (2)编写简单的Java程序,使用数组解决排序、查找等问题。 实训要求: 掌握一维数组、多维数组声明、创建和使用;掌握利用一维数组解决实际问题的方法;了解多维数组的应用。 2.类和对象、包、接口 实训项目五:类与对象的基本操作(2学时) 实训内容: 按照面向对象编程思想编写简单的类,对客观事物进行描述,类的定义包含成员变量声明及成员方法声明与实现,并创建对象进行类的测试。 实训要求: 掌握面向对象编程的思想;掌握类的定义、变量声明、方法声明及实现;掌握对象的创建。实训项目六:构造方法与方法重载(2学时) 实训内容: 编写含有构造方法与成员方法类,实现构造方法与成员方法的重载,编写该类的测试类。实训要求: 掌握构造方法的定义;理解构造方法的原理;掌握方法重载的实现;理解静态多态的概念。实训项目七:类的继承与多态(2学时) 实训内容: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package 子孙类其他package public √√√√ protected √√√× friendly √√×× private √××× 不写时默认为friendly 2、ArrayList和Vector的区别,HashMap和Hashtable的区别 答:就ArrayList与Vector主要从二方面来说. 一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的 二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半 就HashMap与HashTable主要从三方面来说。 一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现 二.同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的 三.值:只有HashMap可以让你将空值作为一个表的条目的key或value 3、char型变量中能不能存贮一个中文汉字?为什么? 答:是能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字 节,所以放一个中文是没问题的 4、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么? 答:多线程有两种实现方法,分别是继承Thread类与实现Runnable接口同步的实现方面有两种,分别是synchronized,wait与notify 5、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么? 答:父类: package test; public class FatherClass { public FatherClass() { System.out.println("FatherClass Create"); } } 子类: package test; import test.FatherClass; public class ChildClass extends FatherClass { public ChildClass() 华南农业大学期末考试试卷(A 卷) 2014-2015学年第 1 学期 考试科目: Java 程序设计 考试类型:(闭卷) 考试 考试时间: 120 分钟 学号 姓名 年级专业 第一大题选择题和第二大题判断题的答案必须填涂在机读卡上,第三、四大题答案写在答题卷上。考试结束时机读卡、答题卷和试卷都要上交。 一、单项选择题(本大题共 17 小题,每小题 2 分,共 34 分) 1. 下列关于Java 程序的说法错误的是________。 A.一个类被编译成一个.class 字节码文件 B. Java 程序是解释执行的,所以程序运行速度快,而且无需编译 C. Java 程序可以实现跨平台 D.有且仅有一个包含main 方法的主类,否则不能运行 2. 下列________是用于一般开发的Java 开发工具标准版本。 A. Java EE B. Java ME C. Java SE D. JDK 3. 下列符合Java 程序类名命名习惯的是________。 A. _iBoy B. Data C. 4k@sina D. studentGrade 4. 下列数据定义错误的是________。 A. float f = 5; B. int d = (int)4.3; C. byte c = -1186; D. final double PI = 3.14; 5. 下列程序片段运行的结果是________。 int a = 36; int b = (a++)%5; System.out.println("a="+a+",b="+b); A. a=36,b=0 B.a=37,b=2 C.a=36,b=1 D.a=37,b=1 6. 下列程序片段运行的结果是________ int score = 93; char level = 'A'; switch(score/10){ case 10 : 专科《JAVA语言程序设计》 一、(共75题,共153分) 1. 在下列选项中,属于Java语言的代码安全检测机制的一项是( )。(2分) A.动态链接 B.访问权限的检查 C.通过接口实现多重继承 D.将所有的Java应用都看做对象,按类进行封装 .标准答案:B 2. 下列选项中,不属于Java语言安全机制的一项足( )。(2分) A.语法检查 B.不允许使用指针 C.代码参数类型合法性检查 D.对内存进行跟踪 .标准答案:D 3. Java语言是一种( )。(2分) A.面向机器的编程语言 B.面向过程的编译型编程语言 C.面向问题的解释型编程语言 D.面向对象的解释型编程语言 .标准答案:D 4. 下列关于long类型的说法中,正确的一项是( )。(2分) A.long类型占存储空间和int类型一样大 B.long类型能表示的数值范围和int类型一样 C.long类型不能自动转换为i︱nt类型 D.常数Long.MIN_VALUE代表整型的最小值 .标准答案:C 5. 下列说法中正确的一个是( )。(2分) A.标识符区分大小写 B.”a”不是一个字符串 C.float f=3.14;是合法的语句 D.float f=(int)3.14;不是合法的语句 .标准答案:A 6. 下列关于int类型和long类型的说法中,正确的一个是( )。(2分) A.int类型可以自动转换为long类型 B.long类型可以自动转换为int类型 C.long类型占的存储空间比int类型的小 D.long类型和int类型数据能表示整数的范围一样 .标准答案:A 7. 下列哪一个是回车字符的正确转义字符?()(2分) A./r B./n C.\t D.\r .标准答案:D 8. 下列的变量定义中,错误的一个是( )。(2分) A.int i; B.int 22_$; C.int i=Integer.MIN_VALUE; D.static short a=10: .标准答案:B 9. Java中所有的简单数据类型都被包装在包( )中。(2分) A.java.sql B.java.awt C.java.1ang D.java.math .标准答案:C 10. 下列语句序列执行后,输出的结果是( )。 (2分) A.l B.0 C.true D.false .标准答案:D 11. 已知定义:;,为了打印输出数组a的最后一个元素,下面正确的代码是( )。(2分) A.System.out.println(a[10]); B.System.out.println(a[9]); C.System.out.println(a[a.1ength]); D.System.Out.println(a(8)); .标准答案:B 1. 有以下程序片段,下列哪个选项不能插入到行1。( D ) 1. 2.public class Interesting{ 3.//do sth 4. } (只能有一个public修饰的class) A、import java.awt.*; B、package mypackage; C、class OtherClass{ } D、public class MyClass{ } 2. 以下哪项是接口的正确定义?( B D ) A、interface B { void print(){};} (接口里的方法都是抽象的,不能有方法体) B、abstract interface B { void print() ;} C、abstract interface B extends A1,A2 //A1、A2为已定义的接口 { abstract void print(){ };} (同上) D、interface B { void print();} 1.接口可以声明为public(公共)或默认的访问权限。接口隐含表明是抽象的(abstract)的。 2.接口的方法默认即为public(公共)且是abstract(抽象)的. 3.接口中的变量默认即为public(公共), static(静态) and final(最终的)。 接口声明编译器如何解释呢 public interface Searchable {}public abstract interface Searchable {} abstract interface Searchable {}abstract interface Searchable {} interface Searchable {}abstract interface Searchable {} void search(String searchString);public abstract void search(String searchString); abstract void search(String public abstract void search(StringJAVA入门练习50题(含答案)
第3章 Java程序流程控制
JAVA试题及答案
程序的流程控制与实现 内容
Java程序设计(1)试卷(A)
最新Java基础试题及其答案
(程序设计基础JAVA)期末考试试卷
Java程序设计实验题目
JAVA基础考题和答案
2014秋季Java程序设计期末考试试卷(A卷)
专科《JAVA语言程序设计》_试卷_答案
Java基础测试习题(答案)