Java模拟题选择部分

Java模拟题选择部分,第1张

Java模拟题选择部分

2-1

以下二维数组的定义正确的是(B ) 必须先命名一维

A.int a[3][2]={{1,2},{1,3},{2,3}}

B.int a[][]=new int[3][]

C.int[][] a=new int[][3]

D.int[][] a=new int[][]

2-2

下面那种类型不属于Java的基本数据类型?(D)

A.byte

B.int

C.boolean

D.String

2-3

下面的数据声明及赋值哪一个是正确的?(D)

(2分)

A.float f = 1.3;

B.char c =;

C.byte b = 257;

D.int i = 10;

2-4

下列标识符(名字)命名原则中,符合规范的是_D__。例:MAX

(2分)

A.类名的首字母小写

B.变量和方法名的首字母大写

C.接口名的首字母小写

D.常量完全大写

2-5

在JAVA中,给定代码片段如下所示,则编译运行后,输出结果是(B)。//i=5跳出循环

for (int i = 0; i < 10; i++) {

    if (i == 10 - i) {

        break;

    }

    if (i % 3 != 0) {

        continue;

    }

    System.out.print(i + " ");

}

(2分)

A.0

B.0 3

C.0 3 6

D.0 3 6 9

2-6

以下选项中没有语法错误的是(C) 。

(2分)

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);

2-7

以下代码段将创建几个对象?(D)

String s1="bc";

String s2="bc";

(2分)

A.2

B.3

C.0

D.1

2-8

关于垃圾收集的哪些叙述是对的。(B)

(1分)

A.垃圾收集能够在期望的时间释放被java对象使用的内存。

B.垃圾收集将检查并释放不再使用的内存。

C.垃圾收集允许程序开发者明确指定并立即释放该内存。

D.程序开发者必须自己创建一个线程进行内存释放的工作。

2-9

你怎样强制对一个对象立即进行垃圾收集?(E)

(2分)

A.调用 System.gc()

B.调用System.gc(), 同时传递要进行垃圾收集对象的引用

C.调用 Runtime.gc()

D.给这个对象的所有引用设置一个新的值(例如null)

E.垃圾收集是不能被强迫立即执行

2-10

设有定义:String s=”World”;,下列语句错误的是(D)。

(2分)

A.int m=s.indexOf('r');

B.char c=s.charAt(0);

C.int n=s.length();

D.String str=s.append();

2-11

以下代码输出(C)。//o为分隔符类似于逗号

  public static void main(String[] args) {

    String[] tokens = "Welcome to Java".split("o");

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

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

    }

  }

(2分)

A.Welcome to Java

B.Welc me to Java

C.Welc me t  Java

D.Welcome t  Java

2-12

请选择下面程序正确的输出结果(A)//打印的是main方法中的a,b

public class Main{

    public static void main(String args[ ]){

        String a = new String("A");

        String b = new String("B");

        mb_operate(a,b);

        System.out.println(a + "." + b);

}

static void mb_operate(String x,String y){

           x.concat(y);

           y=x;

}

}

(2分)

A.A.B

B.A.A

C.AB.AB

D.AB.B

2-13

Java中,要对一个类实现for( : )形式的遍历,则该类必须实现下列哪一个接口?(D)

(2分)

A.Cloneable

B.Comparable

C.Iterator

D.Iterable

2-14在Java中,(A)类可用于创建链表数据结构的对象

(2分)

A.linkedList

B.ArrayList

C.Collection

D.HashMap

2-15

现在有一个方法:public static int info(int x,double y),下面哪个方法是对本方法的正确重载?(C)

(2分)

A.public static int infos(int x,int y);

B.public static void info(int x,double y);

C.public static int info(int x,int y);

D.public static void infos(int x,int y);

2-16

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

(2分)

A.隐藏

B.覆盖

C.重载

D.Java不支持此特性

2-17

假设类A有如下定义,且a是A类的一个实例,则必定错误的选项是( C )。

class  A {

      int  i;

      static  String  s;

       void  method1() {   }

       static  void  method2()  {   }

}

(2分)

A.System.out.println(a.i);

B.a.method1();

C.A.method1();

D.A.method2() ;

2-18

下面关于缺省构造方法的描述中正确的是(A)。

(2分)

A.当类中没有定义任何构造方法时,Java编译器将为这个类创建缺省构造方法

B.缺省构造方法可以初始化其他方法中定义的变量

C.Java编译器会为所有的类创建缺省构造方法。

D.如果在一个类中定义的构造方法都声明了参数,Java编译器将为这个类创建一个缺省构造方法

2-19

下述哪条关于构造方法的说法,不符合Java语法的规定(C)。

(2分)

A.每个类至少有一个构造方法

B.构造方法必须与类同名

C.构造方法无返回值,其返回值类型必须写为void

D.构造方法可以是private的

2-20

以下代码的输出结果为(C)。

public class Pass{

     static int j = 20;

     public void amethod(int x){

         x = x*2;

         j = j*2;

    }

    public static void main(String args[]){

        int i = 10;

        Pass p = new Pass();

        p.amethod(i);

        System.out.println(i+" and "+j);

  }

}

(2分)

A.错误:方法参数与变量不匹配

B.20 and 40

C.10 and 40

D.10 and 20

2-21

一个*.java文件中可以包含多少个public类?(A)

(2分)

A.最多1个

B.最少1个

C.只能是0个

D.不限制

2-22

对于构造方法,下列叙述不正确的是(B)。

(2分)

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

B.构造方法的返回类型只能是void型,即在方法名前加void

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

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

2-23

以下程序运行结果是(D)

public class Test {

    public int div(int a, int b) {

        try {

            return a / b;

        }catch(Exception e){

            System.out.println(“Exception”);

        }catch(NullPointerException e){

            System.out.println(“ArithmeticException”);

        }

        catch (ArithmeticException e) {

            System.out.println(“ArithmeticException”);

        } finally {

            System.out.println(“finally”);

        }

        return 0;

    }

    public static void main(String[] args) {

        Test demo = new Test();

        System.out.println(“商是:” + demo.div(9, 0));

    }

}

(2分)

A.Exception finally 商是:0

B.ArithmeticException finally 商是:0

C.finally商是:0

D.编译报错

2-24

对以下程序进行编译、运行结果是(C)

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 < ar.length;i++)

    System.out.println(ar[i]);

   }

  }

(2分)

A.打印5个0。

B.编译出错,数组ar[]必须初始化。

C.编译出错。

D.出现IndexOutOfBoundes的异常

2-25

下列程序的运行结果是(B)。

public class Test {

  public static void main(String[] args) {

    try {

      System.out.println("Welcome to Java");

      int i = 0;

      int y = 2 / i;

      System.out.println("Welcome to HTML");

    }

    finally {

      System.out.println("The finally clause is executed");

    }

  }

}

(2分)

A.Welcome to Java, 然后是错误信息

B.Welcome to Java,下一行是 The finally clause is executed , 然后是错误信息.

C.替换为正确项

D.替换为错误项

2-26

下面哪个标识符不符合Java定义要求?(D)

(2分)

A.String

B._Name

C.Name123

D.100Book

2-27

下面(C)不是Java的关键字。

(2分)

A.interface

B.super

C.sizeof

D.throws

2-28

int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是( D)。

(2分)

A.public int MAX_LENGTH = 100

B.final int MAX_LENGTH

C.public const int MAX_LENGTH = 100

D.public final int MAX_LENGTH = 100

2-29

Java 语言的特点不包括( C)

(2分)

A.平台无关

B.面向对象

C.多重继承

D.支持多线程

2-30

编译Java源文件和解释执行Java字节码文件的指令分别是什么?(D)

(2分)

A.javac.exe和javadoc.exe

B.java.exe和jdb.exe

C.jad.exe和java.exe

D.javac.exe和java.exe

2-31

在Java中,以下(C)类的对象是以键-值的方式存储对象。

(1分)

A.List

B.ArrayList

C.HashMap

D.linkedList

2-32

要想在集合中保存没有重复的元素并且按照一定的顺序排序,可以使用以下(D)集合。

(1分)

A.linkedList

B.ArrayList

C.HashSet

D.TreeSet

2-33

getCustomerInfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOException,将会输出什么结果(A)。

public void getCustomerInfo() {

            try {

              // do something that may cause an Exception

            } catch (java.io.FileNotFoundException  ex){

                  System.out.print("FileNotFoundException!");

            } catch (java.io.IOException  ex){

                System.out.print("IOException!");

            } catch (java.lang.Exception  ex){

                 System.out.print("Exception!");

            }

}

(2分)

A.IOException!

B.IOException!Exception!

C.FileNotFoundException!IOException!

D.FileNotFoundException!IOException!Exception!

2-34

下面代码运行结果是(B)

public class Demo{

    public int add(int a,int b){

        try{

            return a+b;

        }catch(Exception e){

            System.out.println(“catch 语句块”);

        }finally{

            System.out.println(“finally 语句块”);

        }

        return 0;

    }

    public static void main(String[] args){

        Demo demo = new Demo();

        System.out.println(“和是:”+demo.add(9,34));

    }

}

(2分)

A.编译异常

B.finally语句块 和是:43

C.和是:43 finally语句块

D.catch语句块 和是:43

2-35

下列程序的错误是(B)

public class Test {

  public static void main (String[] args) { 

    try {

      System.out.println("Welcome to Java");

     }

  }

}

(2分)

A.有一个try块但没有catch块。

B.有一个try块但没有catch块或finally块。

C.没有声明异常的方法调用不能放在try块中。

D.没有错误。

2-36

已知下列代码,如果方法oneMethod()运行异常,则下列哪个语句肯定不会被输出?(A)

public void example(){

   try {

   oneMethod();

   System.out.println("condition1");

}catch(ArrayIndexOutOfBoundsException e) {

   System.out.println("condition2");

}catch(Exception e) {

   System.out.println("condition3");

}finally{

   System.out.println("condition4");

}

(2分)

A.condition1

B.condition2

C.condition3

D.condition4

2-37

将以下哪种方法插入行6是不合法的。(A)//子类重写父类方法访问权只能变大不能变小

1.public  class  Test1 {

2.   public  float  aMethod(float a,float b) throws

3.   IOException {      }

4. }

5.public  class  Test2  extends  Test1{

6.

7.}

(2分)

A.float  aMethod(float  a,float  b){ }

B.public  int  aMethod(int a,int b)throws  Exception{ }

C.public  float  aMethod(float  p,float q){ }

D.public  int  aMethod(int a,int  b)throws IOException{ }

2-38

下面的概念,哪个不是关于对象的多态性的体现。(B)

(1分)

A.方法的重载

B.方法的继承

C.方法的覆盖

D.对象的上、下转型

2-39

多态的表现形式有(A)

(1分)

A.重写

B.继承

C.抽象

D.封装

2-40

class Person {

public void printValue(int i, int j) {//... }

public void printValue(int i){//... }

}

public class Teacher extends Person {

public void printValue() {//... }

public void printValue(int i) {//...}

public static void main(String args[]){

Person t = new Teacher();

t.printValue(10);

}

第10行语句将调用哪行语句?(D)

(2分)

A.行2

B.行3

C.行6

D.行7

2-41

如下代码的输出是(A)。

public class Test {

  public static void main(String[] args) {

    new Person().printPerson();

    new Student().printPerson();

  }

}

class Student extends Person {

  private String getInfo() {

    return "Student";

  }

}

class Person {

  private String getInfo() {

    return "Person";

  }

  public void printPerson() {

    System.out.println(getInfo());

  }

}

(2分)

A.Person Person

B.Person Student

C.Stduent Student

D.Student Person

2-42

已知类的继承关系如下:

class Employee;

class Manager extends Employee;

class Director extends Employee; 则以下语句哪个能通过编译? (A )。

(2分)

A.Employee e = new Manager();

B.Director d = new Manager();

C.Director d = new Employee();

D.Manager m = new Director();

2-43

设类B是类C的父类,下列声明对象x1的语句中不正确的是?(D)

(2分)

A.B x1 = new B( );

B.B x1=new C( );

C.C x1 = new C( );

D.C x1=new B( );

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5684789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存