当前位置:文档之家› Sun Java程序员模拟题

Sun Java程序员模拟题

Sun Java程序员模拟题
Sun Java程序员模拟题

Sun Java程序员模拟题

1.JDK由以下哪几部分组成?(选三项)

A. Java编程语言

B. 工具及工具的API

C. Java EE扩展API

D. Java平台虚拟机

2.以下哪些包是Java标准库中常用的包?(选三项)

A. javax.servlet.http

B. https://www.doczj.com/doc/271460574.html,ng

C. java.util

D. java.sql

3.使用JDK工具生成的Java文档的文件格式是?

A. XML格式

B. HTML格式

C. 二进制格式

D. 自定义格式

4.以下关于Applet的描述,哪项错误?

A. 一个Applet就是一段Java程序

B. Applet是一种特殊的Java程序,它需要运行在Web服务器上

C. Applet是一种特殊的Java程序,它需要运行在Web浏览器上

D. Applet是一种Java SE平台的应用程序

5.下列有关类、对象和实例的叙述,正确的是哪一项?

A.类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别

B.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称

C.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称

D.类是对象的抽象,对象是类的具体化,实例是类的另一个名称

6.下列有关main()方法的签名正确的是哪些?(选两项)

A. public static void main(String[] args){}

B. public static void main(){}

C. public static void main(String args[]){}

D. public void static main(String[] args){}

7.下列有关类声明的代码片段,哪一项是正确的?

A.import java.sql.*;

package school;

class Student{

}

B. package school;

import java.sql.*;

class Student{

}

C. package school;

class Student{

}

import java.sql.*;

D. package school;

import java.sql.*;

private String name;

class Student{

}

8.现有:

1. class TestFoo {

2. int x;

3. String y;

4. int getX() { return x; }

5. String getY() { return y; }

6. void setX(int x) {

7. int z = 7;

8. this.x = x;

9. }

10. }

可以添加多少个修饰符来封装此类?

A. 2

B. 3

C. 4

D. 5

9.有关new关键字的描述正确的是哪项?

A. new会调用类的构造器来创建对象

B. new所创建的对象不占用内存空间

C. 创建对象实例的时候可以不使用new关键字

D. new所创建的对象一定存在引用变量

10.下述代码执行后,有几个引用变量和几个对象?

Student stu = new Student(“Mike”);

Student stua;

Stua = stu;

A. 2个引用变量,1个对象

B. 1个引用变量,1个对象

C. 2个引用变量,2个对象

D. 1个引用变量,2个对象

11.下列关于Java对象清除的叙述正确的是哪项?

A. 对象被创建后,立刻变成垃圾对象

B. 任何不再被引用的对象都是垃圾收集的对象

C. 一旦对象失去引用,垃圾收集器立刻把它从内存中清除

D. Java对象的清除必须自己手动处理

12.下列哪项不是int类型的字面量?

A. 20

B. 077

C. 0xABBC

D. \u03A6

13.类Student代码如下:

class Student{

String name;

int age;

Student(String nm){

name = nm;

}

}

执行语句Student stu = new Student()后,字段age的值是哪项?

A. 0

B. null

C. false

D. 编译错误

14.下列哪项不是Java语言中所规定的注释样式?

A. // 单行注释

B. -- 单行注释

C. /*

* 单行或多行注释

*/

D. /**

* 文档注释

*/

15.下列哪项不是Java语言的关键字?

A. goto

B. instanceof

C. sizeof

D. volatile

16.现有:

3. class Parser extends Utils {

4. public static void main(String [] args){

5. System.out.print(new Parser().getInt("42"));

6. }

7. int getInt(String arg){

8. return Integer.parseInt(arg);

9. }

10. }

11. class Utils {

12. int getInt(String arg) throws Exception { return 42;}

13. }

结果为:

A. 42

B.编译失败。

C.无输出结果。

D.运行时异常被抛出。

17.现有:

1. interface Altitude {

2. //insert code here

3. }

和4个声明:

int HIGH = 7;

public int HIGH = 7;

abstract int HIGH = 7; interface int HIGH = 7;

分别插入到第2行,有多少行可以编译?

A. 0

B. 1

C. 2

D. 3

E. 4

18.类Teacher:

class Teacher{

String name;

float salary;

Teacher(String name){

https://www.doczj.com/doc/271460574.html, = name;

}

Teacher(String name,float salary){

https://www.doczj.com/doc/271460574.html, = name;

this.salary = salary;

}

}

执行语句Teacher t = new Teacher(“Tom”,2000.0f);后,字段salary的值是哪一项?

A. 2000.0f

B. 0.0f

C. null;

D. 2000

19.Java语言中表达式10/3的结果是哪项?

A. 3.3

B. 3.33

C. 3

D. 3.0

20.Java语言中表达式-12>>3的结果是哪项?

A. -4

B. -9

C. -1

D. -2

21.下列赋值语句正确的是哪一项?

A. long val=6;

B. int age = 23L;

C. short x=1,y=2,z

z=x+y;

D. int a= ‘A’;

22.假设有2个整数x和y,表达式x>=y ? x : y的含义是哪项?

A. 求2个数的较大数

B. 求2个数的较小数

C. 把y的值赋给x

D. 把x的值赋给y

23.程序:

class TestApp{

public static void main(String[] args){

for(int i=0;i<5;i++)

System.out.print(i+1);

System.out.println(i);

}

}

上述程序运行后的结果是哪项?

A. 123456

B. 123455

C. 123450

D. 编译错误

24.程序:

class TestApp{

public static void main(String[] args){

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

if(i==3)

break;

System.out.print(i);

}

}

程序运行后的输出是哪项?

A. 0123

B. 012

C. 0123456789

D. 012456789

25.程序:

class TestApp{

public static void main(String[] args){ System.out.println(multiply(2,3,4,5));

}

public int multiply(int… nums){

int result = 1;

for(int x :nums)

result *= x;

return result;

}

}

程序运行后的输出是哪项?

A. 14

B. 编译错误

C. 120

D. 24

26.程序:

class TestReference{

public static void main(String[] args){ int x=2;

TestReference tr = new TestReference(); System.out.print(x);

tr.change(x);

System.out.print(x);

}

public void change(int num){

num = num + 1;

}

}

程序运行后的输出是哪项?

A. 23

B. 21

C. 22

D. 编译错误

27.运行时,数组以哪种方式存在?

A. 对象

B. 基本类型变量

C. 引用类型变量

D. 视具体情况而定

28.现有:

public interface A {}

以下哪项声明是合法的?

A. A a = new A();

B. A[] a = new A[];

C. A[] a = new A[10];

D. 以上皆错

29.已知数组array,其最后一个元素的下标是?

A. array.size

B. array.length

C. array.size-1

D. array.length-1

30.为将数组myArray的长度由6改为10,现采取以下编码:

int[] myArray = new int[6];

myArray = new int[10];

代码执行后,以下叙述哪项是正确的?

A. 数组myArray的长度已由6改为10,其中前6个元素的值不变,后四个元素的值为空。

B. 数组myArray的长度已由6改为10,其中前6个元素的值不变,后四个元素需再经过初始化后才能使用。

C. 数组myArray的长度已由6改为10,原来6个元素的值全部丢失。

D. 数组myArray的长度没有变化。

31.下列关于继承优点的叙述正确的是哪几项?(选三项)

E.可以创建更为特殊的类型

F.消除重复代码

G.便于维护

H.执行效率高

32.下列有关父类属性和方法继承规则的描述错误的是哪项?

A. 父类中private修饰的属性和方法在子类中不被继承

B. 父类中public修饰的属性和方法在子类中被继承且可访问

C. 父类中protected修饰的属性和方法在子类中被继承且可访问

D. 父类中default修饰的属性和方法在子类中被继承,若父类和子类在同一个包中,则也可访问

33.public class Parent{

public void change(int x){}

}

public class Child extends Parent{

//覆盖父类change方法

}

下列哪个声明是正确的覆盖了父类的change方法?

A. protected void change(int x){}

B. public void change(int x, int y){}

C. public void change(String s){}

D. public void change(int x){}

34.public class Employee{

private String name;

public Employee(String name){

https://www.doczj.com/doc/271460574.html, = name;

}

public String getName(){

return name;

}

}

public class Manager extends Employee{

public Manager(String name){

System.out.println(getName());

}

}

执行语句new Manager(“smith”)后程序的输出是哪项?

A. smith

B. null

C. 编译错误

D. name

35.public class Employee{

private String name;

public Employee(String name){

https://www.doczj.com/doc/271460574.html, = name;

}

public String getName(){

return name;

}

}

public class Manager extends Employee{

private String department;

public Manager(String name,String department){ this.department = department;

super(name);

System.out.println(getName());

}

}

执行语句new Manager(“smith”,”SALES”)后程序的输出是哪项?

A. smith

B. null

C. SALES

D. 编译错误

36.public class Pet{

private String name;

public Pet(){

System.out.print(1);

}

public Pet(String name){

System.out.print(2);

}

public class Dog extends Pet{

public Dog(String name){

System.out.print(3);

}

}

执行new Dog(“棕熊”);后程序输出是哪项?

A. 23

B. 13

C. 123

D. 321

37.public class Pet{

private String name;

public Pet(){

System.out.print(1);

}

public Pet(String name){

System.out.print(2);

}

}

public class Dog extends Pet{

public Dog(){

System.out.print(4);

}

public Dog(String name){

this();

System.out.print(3);

}

}

执行new Dog(“棕熊”);后程序输出是哪项?

A. 143

B. 423

D. 1134

38.public class Pet{

private String name;

public Pet(){

System.out.print(1);

}

public Pet(String name){

System.out.print(2);

}

}

public class Dog extends Pet{

public Dog(){

System.out.print(4);

}

public Dog(String name){

super(name);

System.out.print(3);

}

}

执行new Dog(“棕熊”);后程序输出是哪项?

A. 33

B. 13

C. 23

D. 123

39.public class Employee{

private String name;

public Employee(String name){ https://www.doczj.com/doc/271460574.html, = name;

public void display(){

System.out.print(name);

}

}

public class Manager extends Employee{

private String department;

public Manager(String name,String department){

super(name);

this.department = department;

}

public void display(){

System.out.println(super.display()+”,”+department); }

}

执行语句new Manager(“smith”,”SALES”)后程序的输出是哪项?

A. smith,SALES

B. null,SALES

C. smith,null

D. null,null

E. 编译错误

40.如果想要一个类不能被任何类继承的话,需要使用哪个关键字来修饰该类?

A. abstract

B. final

C. static

D. new

41.Java语言中常量的定义是哪项?

A. public static

B. public static final

C. final

D. public static abstract

42.为了使得System.out.println()输出对象引用的时候得到有意义的信息,我们应该覆盖Object中的哪个方法?

A. equals

B. hashCode

C. toString

D. notify

43.表达式”hello” instanceof String返回的值是哪项?

A. true

B. false

C. 1

D. 0

E. hello

44.程序:

class MyDate{

private int year;

private int month;

private int day;

public MyDate(int year,int month,int day){

this.year=year;

this.month=month;

this.day=day;

}

//Override Method

}

为了让new MyDate(1980,11,9)==new MyDate(1980,11,9) 返回true,必须在Override Method处覆盖哪个方法?

A. hashCode

B. equals

C. toString

D. notify

45.public class Pet{

private String name;

public Pet(String name){

https://www.doczj.com/doc/271460574.html, = name;

}

public void speak(){

System.out.print(name);

}

}

public class Dog extends Pet{

public Dog(String name){

super(name);

}

public void speak(){

super.speak();

System.out.print(“ Dog ”);

}

}

执行代码

Pet pet = new Dog(“京巴”);

pet.speak();

后输出的内容是哪项?

A. 京巴

B. 京巴Dog

C. null

D. Dog京巴

46.public class Pet{

private static String name;

public Pet(String name){

https://www.doczj.com/doc/271460574.html, = name;

}

public static void speak(){

System.out.print(name);

}

}

public class Dog extends Pet{

public Dog(String name){

super(name);

}

public static void speak(){

super.speak();

System.out.print(“ Dog ”);

}

}

执行代码

Pet pet = new Dog(“京巴”);

pet.speak();

后输出的内容是哪项?

A. 京巴

B. 京巴Dog

C. null

D. Dog京巴

47.现有:

1. class Alpha { void m1() {} }

2. class Beta extends Alpha { void m2() { } }

3. class Gamma extends Beta { }

4.

5. class GreekTest {

6. public static void main(String [] args) {

7. Alpha [] a = {new Alpha(), new Beta(), new Gamma() };

8. for(Alpha a2 : a) {

9. a2.m1();

10. if (a2 instanceof Beta || a2 instanceof Gamma)

11. //insert code here

12. }

13. }

14. }

哪一行代码插入到第11行,将编译但是会在运行时产生异常?

A. a2.m2();

B. ((Beta)a2).m2();

C. ((Alpha)a2).m2();

D. ((Gamma)a2).m2();

48.程序员正在进行一个项目,必须实现equals方法与所给的hashCode方法协调运行:

42. public int hashCode() {

43. return (size.hashCode() + color.hashCode()) * 17;

44. }

哪一个equals方法支持此目标?

A. 无法确定

B. public boolean equals(Object o) {

Sock s = (Sock) o;

return size.equals(s.size);

}

C. public boolean equals(Object o) {

Sock s = (Sock) o;

相关主题
文本预览
相关文档 最新文档