欢迎光临散文网 会员登陆 & 注册

Java测试题

2022-03-23 10:28 作者:答案鬼  | 我要投稿

Java测试题_1

 

一、选择题

1、 编译Java源程序文件产生的字节码文件的扩展名为(    B      )。

A、java  B、class  C、html  D、exe

 

2、 main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的(  B   )?

   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[])

 

3、 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(      A   )。

A、static  void  method( )    B、public  void  method( )    

C、final  void  method( )    D、abstract  void  method( )

 

4、 下列哪个是合法的Java标识符?( B\C    )

A、Tree&Glasses      B、FirstJavaApplet

C、_$theLastOne      D、273.5

 

5、 Java Application源程序的主类是指包含有(  A   )方法的类。

A、main方法       B、toString方法

C、init方法       D、actionPerfromed方法

 

6、 若a的值为3时,下列程序段被执行后,c的值是多少?(   C  )

   int c = 1;

    if ( a>0 )  

if ( a>3 )

c = 2;

else

c = 3;

else

c = 4;

A、1  B、2  C、3  D、4

 

7、 对于构造方法,下列叙述正确的是( ACD    )。

A、构造方法是类的一种特殊方法,它的方法名必须与类名相同。

B、构造方法的返回类型只能是void型。

C、构造方法的主要作用是完成对类的对象的初始化工作。

D、一般在创建新对象时,系统会自动调用构造方法。

 

8、 下面的是关于类及其修饰符的一些描述,正确的是:( A  C    )。

A、abstract类只能用来派生子类,不能用来创建abstract类的对象。

B、final类不但可以用来派生子类,也可以用来创建final类的对象。

C、abstract不能与final同时修饰一个类。

D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。

 

9、 若需要定义一个类,应使用哪种修饰符?(ACD     )

A、static   B、package  C、private  D、public

 

10、若在某一个类定义中定义有如下的方法:abstract void performDial( );该方法属于(  D   )。

A、本地方法  B、最终方法  C、解态方法  D、抽象方法

 

11、设有下面两个类的定义:

     class  Person {                        class  Student  extends  Person {

         long    id;     // 身份证号            int  score;  // 入学总分

         String  name;   // 姓名                int  getScore(){

      }                                             return  score;

                                                }

                                            }

问:类Person和类Student的关系是( B    )。

A、包含关系    B、继承关系

C、关联关系    D、无关系,上述类定义有语法错误

 

12、设有下面的两个类定义:

class AA {  

void show()

{

System.out.println("我喜欢Java!");

}

}

class BB extends AA {

void show()

{

System.out.println("我喜欢C++!");

}

   }

则顺序执行如下语句后输出结果为:(     )

AA   a;   BB   b;

a.Show();   b.Show();

    A、 我喜欢Java!     B、 我喜欢C++!

       我喜欢C++!      我喜欢Java!

    C、 我喜欢Java!     D、 我喜欢C++!

       我喜欢Java!      我喜欢C++!

 

13、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为(     )。

A、隐藏   B、覆盖   C、重载  D、Java不支持此特性

 

14、对于构造函数,下列叙述正确的是(     )。

A、构造函数也允许重载。

B、子类无条件地继承父类的无参构造函数。

C、子类不允许调用父类的构造函数。

D、在同一个类中定义的重载构造函数可以相互调用。

 

15、在使用interface声明一个接口时,只可以使用( D    )修饰符修饰该接口。

A、private       B、protected

C、private protected     D、public

 

16、设有下面两个赋值语句:

a = Integer.parseInt("1024");

b = Integer.valueOf("1024").intValue();

下述说法正确的是( D    )。

A、a是整数类型变量,b是整数类对象。

B、a是整数类对象,b是整数类型变量。

C、a和b都是整数类对象并且它们的值相等。

D、a和b都是整数类型变量并且它们的值相等。

 

17、在Java中,存放字符串常量的对象属于( B    )类对象。

A、Character     B、String

C、StringBuffer    D、Vector

 

二、填空题

1、 Java程序分为那两类:_____Application_______________________和________Applet__________________。

2、 设x = 2 ,则表达式 ( x + + ) * 3 的值是_____6_____________。

3、 若x = 5,y = 10,则x > y和x <= y的逻辑值分别为_false________和_____true_____。

4、 顺序执行以下两个语句的输出结果是:_______10____________。

     String  s = "我喜欢学习Java!";     

     System.out.println(s.length( ));

5、 如果一个Java源程序文件中定义有4个类,则使用Sun公司的JDK编译器javac编译该源程序文件将产生_3___个文件名与类名相同而扩展名为___class_____的字节码文件。

6、 一个Java  Application源程序文件名为MyJavaApplication.java,如果使用Sun公司的Java开发工具JDK编译该源程序文件并使用其虚拟机运算这个程序的字节码文件,应该顺序执行如下两个命令:_________________________________________、___________________________________________。

7、 在Java程序中定义的类有两部分组成,分别是:_______属性__________、_____方法____________。

8、 ___抽象_______方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。_____final___________方法是不能被当前类的子类重新定义的方法。

9、 形式参数指的是方法被___定义_________时的参数行,实际参数是方法被_____调用_________时所传递进去的变量或值。

10、在Java程序中,通过类的定义只能实现_单___重继承,但通过接口的定义可以实现__多___重继承关系。

11、面向对象有三个特征:_______多态_____________、________封装______________、______继承_____________。

12、设有数组定义:

int   MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 , 100 };

则执行以下几个语句后的输出结果是____550______________________________。

     int  s = 0 ;

     for  ( int  i = 0 ; i < MyIntArray.length ; i + + )

        s += MyIntArray[i] ;

     System.out.println( s );

 

三、写出下列程序完成的功能


1、

public class Sum

{

public static void main(String args[])

{

double sum = 0.0 ;

for(int i=1;i<=100;i++)

sum += 1.0/(double) i ;

System.out.println("sum="+sum);

}

}

 

程序功能:

 

2、

public class Class1

{

public static void main(String args[])

{  

int i = 0 ;

int Max = 0 ;

int Min = 0 ;

       int a[] = {12,67,8,98,23,56,124,55,99,100};

Max = Min = a[0];

for(i=1;i<a.length;i++)

{

if(a[i]<Min)

Min = a[i];

if(a[i]>Max)

Max = a[i];

}

System.out.println( Max+"  "+Min );

System.out.println( );

}

}

 

程序功能:

3、

public class ABC

{

    public static void main(String args[])

{  

int i = 0 ;

int j = 0 ;

int a[] = {12,67,8,98,23,56,124,55,99,100};

for(i=0;i<a.length-1;i++)

{

       int k = i;

for(j=i;j<a.length;j++)

if(a[j]<a[k])

k = j;

     int  temp =a[i];

a[i] = a[k];

a[k] = temp;

}

for(i=0;i<a.length;i++)

System.out.print(a[i]+"  ");

System.out.println( );

}

}

 

程序功能:

 

4、

public class Class1

{   

public static void main(String args[])

{   

Fact N = new Fact(4);

System.out.println(N.fact());

}

}

class Fact

{

int n = 0 ;

Fact(int nn)

{

n = nn;

}

int fact()

{

int i = 1 ;

int f = 1;

for(i=1;i<=n;i++)

f = f*i;

return f;

   }

}

 

程序功能:

 

5、

public class Class1

{   

public static void main(String args[])

{

SubClass a = new SubClass(10,3);

System.out.println(a.exp());

    }

}

class SuperClass

{

float  x;

int    n;  

SuperClass(float xx,int nn)

{

x = xx ;

n = nn;

}

}

class SubClass extends SuperClass

{

SubClass(float xx,int nn)

{

super(xx,nn);

}

float exp()

{

float s = 1;

for (int i = 1;i<=n;i++)

s = s*x;

return  s;  

}

}

 

程序功能:

 

6、

public class ABC

{

public static void main(String args[])

{

SubClass sb = new SubClass();

System.out.println(sb.max());

}

}

class SuperClass

{

int a = 10 ;

int b = 20 ;

}

 

class SubClass extends SuperClass

{

int max()

{

return ((a>b)?a:b);

}

}

 

程序功能:

 


 

四、写出下面程序的运行结果


1、

public class ABC

{

public  static  void  main(String args[ ])

{

AB s = new AB("Hello!","I love JAVA.");

System.out.println(s.toString( ));

}

}

class AB

{

String s1 ;

String s2 ;

AB(String str1,String str2)

{

s1 = str1;

s2 = str2;

}

public String toString( )

{

return s1+s2;

}

}

 

输出结果:

 

2、

public class abc

{

public static void main(String args[])

{

int i = 0 ;

int s = 0 ;

int a[] = {10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90};

for ( i = 0 ; i < a.length ; i ++ )

if ( a[i]%3 = = 0 )  s += a[i] ;

System.out.println("s="+s);

}

}

 

输出结果:

 

3、

public class ABC

{

public static void main(String  args[ ])

{

SubSubClass x = new SubSubClass(10,20,30);

x.show();

}

}

class SuperClass

{

int a,b;

SuperClass(int aa , int  BB)

{

a=aa;

b=BB;

}

void show( )

{

System.out.println("a="+a+"\nb="+b);

}

}

class SubClass extends SuperClass

{

int c;

SubClass(int aa,int BB,int cc)

{   

super(aa,BB);

c=cc;

}

}

class SubSubClass extends SubClass

{

int a;

SubSubClass(int aa,int BB,int cc)

{

super(aa,BB,cc);

a = aa + BB + cc;

}

void show()

{

System.out.println("a="+a+"\nb="+b+"\nc="+c);

}

}

 

输出结果:

 

4、

public class ABC

{

public static void main(String args[])

{

String s1 = "Hello!";

String s2 = new String("World!");

System.out.println(s1.concat(s2));

}

}

 

5、

public class ABC

{

public static void main(String args[])

{

int i = 0   ;

int a[] = { 11,22,33,44,55,66,77,88,99 };

for ( i = 0 ; i <= a.length / 2 ; i ++ )

System.out.print( a[i]+a[a.length-i-1]+"  ");

System.out.println( );

}

}

 

输出结果:

 

6、

class Parent

{

void printMe()

{

System.out.println("parent");

}

}

class Child extends Parent

{

void printMe()

{

System.out.println("child");

}

void printAll()

{

super.printMe();

this.printMe();

printMe();

}

}

public class Class1

{

public static void main(String args[])

{

Child myC = new Child( );

myC.printAll( );

}

}


 

五、编程题

 

1、 编写一个完整的Java  Application 程序使用复数类Complex验证两个复数 1+2i 和3+4i 相加产生一个新的复数 4+6i 。

· 复数类Complex必须满足如下要求:

(1)、复数类Complex 的属性有:

RealPart : int型,代表复数的实数部分

ImaginPart : int型,代表复数的虚数部分

(2)、复数类Complex 的方法有:

Complex( ) : 构造函数,将复数的实部和虚部都置0

Complex( int  r , int  i ) : 构造函数,形参 r 为实部的初值,i为虚部的初值。

Complex  complexAdd(Complex  a) : 将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值,返回给此方法的调用者。

String  ToString( ) : 把当前复数对象的实部、虚部组合成 a+bi 的字符串形式,其中a 和 b分别为实部和虚部的数据。

 

 

2、 编写一个学生类 Student,要求:

(1)、学生类 Student 属性有:

id: long型,代表学号

name: String类对象,代表姓名

age : int型,代表年龄

Sex : boolen型,代表性别(其中:true表示男,false表示女)

phone : String类对象,代表联系电话

(2)、学生类 Student的方法有:

Student(long  i , String  n , int  a , boolean  s , long  p)

有参构造函数,形参表中的参数分别初始化学号、姓名、年龄、性别和联系电话。

int getAge(): 获取年龄作为方法的返回值。

boolean getSex( ) ( ) : 获取性别作为方法的返回值。

long getPhone ( ) : 获取联系电话作为方法的返回值。

public String toString( ) : 以 姓名:联系电话 的形式作为方法的返回值。

 

 

public class Student{

long id;

String name;

Int age;

Boolean Sex;

String phone;

Public Student(long i,String n,int a,boolean s,long p){

This。I=i;

 

}

Public int getA

}

 

 

 


Java测试题的评论 (共 条)

分享到微博请遵守国家法律