Java语言程序设计期末复习综合练习题一、选择题。
2. main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的()A、public static void main()B、public static void main( String args[] )C、public static int main(String [] arg )D、public void main(String arg[] )答:B4.下列哪个是合法的Java标识符()A、Tree&GlassesB、FirstJavaAppletC、_$theLastOneD、答:B 、 C5.Java Application源程序的主类是指包含有()方法的类。
A、main方法B、toString方法C、init方法D、actionPerfromed方法答:A6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用()个比特位。
A、8B、16C、32D、64答:B7.设 a = 8,则表达式 a >>> 2 的值是( )。
A、1B、2C、3D、4答:B8.若a的值为3时,下列程序段被执行后,c的值是多少()c = 1;if ( a>0 ) if ( a>3 ) c = 2; else c = 3; else c = 4;A、1B、2C、3D、4答:C9.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( )语句。
A、import .* ;B、import ;C、import .* ;D、import ;答:C10.对于构造函数,下列叙述正确的是()。
A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
B、构造函数的返回类型只能是void型。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
答:A C D11.下面的是关于类及其修饰符的一些描述,正确的是:()。
A、abstract类只能用来派生子类,不能用来创建abstract类的对象。
B、final类不但可以用来派生子类,也可以用来创建final类的对象。
C、abstract不能与final同时修饰一个类。
D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。
答:A C D13.若在某一个类定义中定义有如下的方法: abstract void performDial( );该方法属于()。
A、本地方法B、最终方法C、解态方法D、抽象方法答:D14.下列关于静态初始化器的叙述中,哪一个是正确的()A、静态初始化器是在构造函数之前加上static修饰符。
B、静态初始化器是对类自身进行初始化。
C、静态初始化器在同一个类中只能有一个。
D、静态初始化器是在其所属的类加载内存时由系统自动调用执行。
答:B D15.不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的()A、实例方法可以直接调用父类的实例方法。
B、实例方法可以直接调用父类的类方法。
C、实例方法可以直接调用其他类的实例方法。
D、实例方法可以直接调用本类的类方法。
答:B D16.设有下面两个类的定义:class Person { class Student extends Person { long id; 1024”1024”ntValue();下述说法正确的是()。
A、a是整数类型变量,b是整数类对象。
B、a是整数类对象,b是整数类型变量。
C、a和b都是整数类对象并且它们的值相等。
D、a和b都是整数类型变量并且它们的值相等。
答:D24.下面的语句的作用是:()。
Vector MyVector = new Vector(100,50);A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。
B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。
C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
答:D25.在Java中,存放字符串常量的对象属于()类对象。
A、CharacterB、StringC、StringBufferD、Vector答:B31.对于子类的构造函数说明,下列叙述中不正确的是()。
A、子类无条件地继承父类的无参构造函数。
B、子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。
C、在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。
D、子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。
答:D二、填空题。
2.设x = 2 ,则表达式 ( x + + ) * 3 的值是。
答:63.若x = 5,y = 10,则x > y和x <= y的逻辑值分别为和。
答:false、true4.顺序执行以下两个语句的输出结果是:。
String s = “我喜欢学习Java!”;));答:105.据程序的构成和运行环境的不同,Java源程序分为两大类:程序和程序。
答:Java Application 、 Java Applet ( 或 Application、Applet )6.如果一个Java源程序文件中定义有4个类,则使用Sun公司的JDK编译器javac编译该源程序文件将产生个文件名与类名相同而扩展名为的字节码文件。
答:4、class7.开发与运行Java程序需要经过的三个主要步骤为、和。
答:编辑源程序、编译生成字节码、解释运行字节码9.一个Java Application源程序文件名为,如果使用Sun公司的Java开发工具JDK 编译该源程序文件并使用其虚拟机运算这个程序的字节码文件,应该顺序执行如下两个命令:、。
答:javac 、java MyJavaApplication10.在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码字符占用字节内存空间,这样,无论是中文字符还是英文字符,每个都是占用字节内存空间。
答:2、211.在Java程序中定义的类有两种成员:、。
答:域成员、方法成员13.创建一个名为 MyPackage 的包的语句是,该语句应该放在程序的位置为:。
答:package MyPackage ; 应该在程序第一句。
14.方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
方法是不能被当前类的子类重新定义的方法。
答:抽象方法、最终方法 (或 abstract方法、final方法)15.形式参数指的是方法被时的参数行,实际参数是方法被时所传递进去的变量或值。
答:定义、调用16.多态是指,在Java中有两种多态,一种是使用方法的实现多态,另一种是使用方法的实现多态。
答:一个程序中有多个同名的不同方法覆盖重载17.在Java程序中,通过类的定义只能实现重继承,但通过接口的定义可以实现重继承关系。
答:单、多19.字符串分为两大类,一类是字符串常量,使用类的对象表示;另一类是字符串变量,使用类的对象表示。
答:String、StringBuffer20.设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 , 100 };则执行以下几个语句后的输出结果是。
int s = 0 ;for ( int i = 0 ; i < ; i + + )s += MyIntArray[i] ;s );答:550三、写出下列程序完成的功能。
1. public class Sum{ public static void main( String args[ ]){ double sum = ;for ( int i = 1 ; i <= 100 ; i + + )sum += (double) i ;"sum="+sum );}}答:计算 1/1+1/2+1/3+...+1/100 的值。
2.import .* ;public class Reverse{ public static void main(String args[ ]){ int i , n =10 ;int a[ ] = new int[10];for ( i = 0 ; i < n ; i ++ )try {BufferedReader br = new BufferedReader(new InputStreamReader);a[i] = ( )); ;public class Class1{public static void main(String args[ ]){int i , Max , Min ;int a[ ] = { 12,67,8,98,23,56,124,55,99,100 };Max = Min = a[0];for ( i = 1 ; i < ; i ++ ) {if ( a[i]<Min ) Min = a[i];if ( a[i]>Max ) Max = a[i];}Max+" "+Min ););}}答:在数组中查找并输出最大值和最小值。
5. public class ABC{public static void main(String args[ ]){int i , j ;int a[ ] = { 12,67,8,98,23,56,124,55,99,100 };for ( i = 0 ; i < ; i ++ ) {int k = i;for ( j = i ; j < ; j++ )if ( a[j]<a[k] ) k = j;int temp =a[i];a[i] = a[k];a[k] = temp;}for ( i =0 ; i<; i++ )" "););}}答:使用选择法对数组a的数据进行升序排序,然后输出排序后的结果。
6.import .*;public class Class1 {public static void main( String args[] ){Fact N = new Fact( 4 );( ) );}}class Fact {int n ;Fact( int nn ) { n = nn; }int fact( ) {int i , f = 1;for ( i=1; i<=n; i++ )f = f*i;return f;}}答:定义一个计算n!的类Fact,然后主类中创建一个对象求解4!的值。