java程序100道_Java100道习题 1

1.

已有代码Person p=new Person(); 使用语句Person sp=p;相当于生成了一个与p相同的新对象sp。判断该语句的对错。//去掉相当于就是错的

因为sp 与p指向同一块内存只是标示不同罢了

a)

b)

2.

Java中,既可以用数组放简单类型数据,也可以放类类型的对象。

a)

b)

3.

在Java中,整型数据的大小是不固定的,某些编译器使用2字节,也有使用4字节的。

a)

b)

4.

在同一类中,可以有以下两个方法声明:

void add(int j,int

k){…} 和 int add(int j,int

k){…}//方法的重载

与参数的数量和类型 有关和返回值类型无关

a)

b)

5.

新对象的创建总是和引用该对象的变量声明在一起完成。

a)

举个例子Person p=new

person();

b)

6.

Java中的每个类都至少有一个构造器。

a)

b)

7.

静态方法可作用于静态变量和成员变量。

a)

b)

8.

下面哪句是正确的(一项)

a)

char ch=”s”;

b)

float num=5.5;

c)

double price=100;

d)

byte=1000;

9.

有以下代码(一项):

public class Person{

static int arr[]=new int[10];//已经初始化了public static void

main(String a[]){

System.out.println(arr[1]);

}

a)

编译时出错。 b) 编译时没错,运行时出错。

c)

输出0。

d)

输出为空。

10. 有如下代码(一项):

public class Test{

public static void main(String args []){

int

age;//没有初始化所以不能编译

age=age+1;

System.out.println(“The age

is”+age);

}

}

a)

编译,运行后没有输出

b)

编译,运行后输出:The age is 1

c)

能通过编译,但运行时产生错误

d)

不能通过编译

11. 在Java语言中,下列语句中正确的是()。

a)

String temp[]=new String

{“j”,“a”,“z”};

b)

String temp[]= {“j”

“b”

“c”};

c)

String temp[3]= {“a”,“b”,“c”};

d)

String temp[]= {“a”, “b”

,“c”};

12. 有以下代码(一项):

class Test{

private static int x=100;

public static void main(String arg[]){

Test t1=new Test();

t1.x++;

Test t2=new Test();

t2.x++;

t1=new Test();

t1.x++;

Test.x++;

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

}

}

a)

第5行不能通过编译,因为引用了私有静态变量

b)

第10行不能通过编译,因为X是私有静态变量。

c)

程序通过编译,结果为X=103

d)

程序通过编译,结果为X=104

13. 以下有关构造函数的说法,正确的是(两项):

a)

一个类可以有多个构造函数

b)

构造函数在对象创建时被调用

c)

构造函数有返回值

d)

构造函数可以和类同名,也可以和类名不同

14. 下列语句有语法错误的是(选一项):

a)

int x=1 ; y=2; z=3;

b)

for(x=10,y=0;x>0;x++);

c)

while(x>5);

d)

for(;;)

15. 算术表达式1+2/3-4*5的值为。(选择1项)

a)

1

b)

-19

c)

-5

d)

0

计算机是从左到右的 从1+2开始但是因为除法的优先级比加法高所以先算2/3 结果为0,然后算1+0=1 再算1-4 因为乘法的优先级比加法高所以算4*5==20 然后再算 1-20 结果为-19

16. 下列哪一项不属于面向对象程序设计的基本要素?(选择1项)

a)

b)

对象

c)

方法

d)

控制语句

17. 下面描述的源文件名(*.java)正确的是:(选两项)

a)

必须和含有main()方法的类名一致

b)必须和public修饰的类名一致

C)如果没有public修饰的类,名字可以任意

b)

名字可以任意

18. ?下列哪些语句不能通过编译:(选择一项

)

a)

String s = "john" + " was " + " here";

b)

String s = "john" + 3;

c)

int a = 3 + 5;

d)

int a = 5 + 5.5;

19. ?下面哪几个函数是public void example(){...}的重载函数?(选择两项)方法重载只有参数的数量和类型有关与返回值类型

无关

a)

public void example( int

m){...}

b)

public int

example(){...}

c)

public void

example2(){...}

d)

public int example ( int m,

float f){...}

20. 接口是特殊的类,所以接口可以继承,子接口将继承父接口的所有常量和方法。

a)

b)

21. 如果p是父类Parent的对象,c是子类Child的对象,则c=p是正确的。

a)

b)

22. 如果一个类的方法与其父类中方法同名并有相同参数,但返回类型不同,也能构成重写。

a)

b)

23. 如果Food是一个接口,Banana是Food的一个实现类,则语句Food f = new Banana( )。

a)

b)

24. 抽象方法只存在于abstract

class里。

a)

b)

25. 缺省的,接口中的所有变量都是final和static的。

a)

b)

26. 在Java语言中,下列表达式返回true的是(两项)。

a)

“john”= =“john”//内存比较(只是标示不同)

b)

“john”.equals(“john”) //值的比较

c)

“john”=“john”

d)

String s=“john”; s = = new

String(“john”)

String a = “john”;

String b = “john”;

a==b

true

a.

equals(b)

true

String c = new String(“john”);

a==c false

a.equals(c) true

27. ?如果编译运行下面的Java代码,将会(一项)。

class Shape{ }

class Circle extends Shape { }

public class Test{

public static void

main(String args[ ]){

Shape s = new Shape

();

Circle c = (Circle)

s;//父类强制转换成子类编译没错但运行时会有错

}

}

a)

能够正确地编译和运行

b)

发生编译时异常

c)

发生运行时异常

28. 在Java语言中,类Worker是类Person的子类,Worker的构造方法中有一句“super()”,该语句(一项)。

a)

调用类Worker中定义的super()方法

b)

调用类Person中定义的super()方法

c)

调用类Person的构造方法

d)

语法错误

29. 在Java中,关于final关键字的说法正确的是(选两项)。

a)

如果修饰变量,则一旦赋了值,就等同一个常量

b)

如果修饰类,则该类只能被一个子类继承

c)

如果修饰方法,则该方法不能在子类中被覆盖

d)

如果修饰方法,则该方法所在的类不能被继承

30. 下面的是关于类及其修饰符的一些描述,错误的是。(选择1项)

a)

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

b)

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

c)

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

d)

abstract类中可以没有abstract方法

31. 运行下列Java代码后,包含在输出结果中的是()。(选择两项)

public class Example{

public static void main(String args[]){

int i=0;

do{

System.out.println(〞Doing it for i is 〞+i);

}while(- - i

> 0);//先自减在判断

System.out.println(〞Finished〞);

}

}

a)

Doing it for i is 3

b)

Doing it for i is 1

c)

Doing it for i is 2

d)

Doing it for i is 0

e)

Finished

32. *在Java中,下列代码将输出()。(选择一项)

Public class integerequals{

Public

static void main(String args[ ]) {

Integer a=new Integer(3);

Integer b=new Integer(3);

System.out.println(a==b);//==比较的是内存

a b 指向完全不同的内存

}

}

a)

编译器将有错误

b)

程序编译并打印true

c)

程序编译并打印false

d)

运行期异常

33. 在Java中,在单一文件中import、class 和package的正确出现顺序是()。(选择一项)

a)

class, import, package

b)

package, import, class

c)

import, package, class

d)

package, class, import

34. 语句double d=Math.sqrt(1000);需要使用到的包是()。(选择一项)

a)

Java.lang.*

b)

Java.Math.*

c)

Java.util.*;

d)

以上皆非

35. 编译并运行下面的Java代码段:

char c='a';

switch (c) {

case 'a':

System.out.println("a");

default: System.out.println("default");

}

输出结果是()。(选择一项)

a) 代码无法编译,因为switch语句没有一个合法的表达式

b)

a 和 default

//

没有了case 因此一直往下走

c)

a

d)

default

36. 在Java中,要想定义只有与该类在同一包内的其他类可以访问的类,应该用(

)关键字。(选择一项)

a)

不需要任何关键字

b) private

c) final

d) protected

37. 编译并运行下面的Java程序:

class A{

int var1=1;

int var2;

public static void

main(String[] args){

int var3=3;

A a=new A(); //new 同时声明了 var1 var2 的内存,因此可以计算;

System.out.println(a.var1+a.var2+var3);

}

}

将产生( )结果。(选择一项)

a) 0

b) 4

c) 3

d) 代码无法编译,因为var2根本没有被初始化

38. 在Java中,下面关于包的陈述中正确的是()。(选择两项)

a)

包的声明必须是源文件的第一句代码

b)

包的声明必须紧跟在import语句的后面

c)

只有公共类才能放在包中

d)

可以将多个源文件中的类放在同一个包中

39. 当一个类的某个变量声明为protected时下列说法正确的是()。(选择两项)

a)

只有同一类中的成员才能访问它

b)

不同包中的任何其他类都能够访问它

c)

同包中的任何其他类能够访问它

d)

不同包中的子类可以访问该变量

40. 在Java中,执行下面的语句后,c的值为()。(选择一项)

String s= "Jessica

"; char

c=s.charAt(6);

a)

"c "

b)

"a "

c)

'c '

d)

'a '

41. 考虑以下代码,选择一项正确答案

class Test{

void fun(int i){//将字符转化成了数字

字符在计算机已2进制的形式存在的

System.out.println(“第一个方法”);

}

void fun(String s){

System.out.println(“第二个方法”);

}

public static void main(String arg[]){

Test t=new Test();

char ch=’y’;

t.fun(ch);

}

}

a)

编译错误

b)

执行错误

c)

输出结果为:第一个方法

d)

输出结果为:第二个方法

42.

为了定义三个整型数组a1、a2、a3,下面声明正确的语句是。(选择1项)

a)

int Array[]

a1,a2;

int a3[]={1,2,3,4,5};

b)

int [ ] a1,a2;

int a3[]={1,2,3,4,5};

c)

int a1,a2[ ];

int a3={1,2,3,4,5};

d)

int [] a1,a2;

int a3=(1,2,3,4,5);

43.

在Java中,关于CLASSPATH环境变量的说法错误的是(一项)。(没讲)

a)

CLASSPATH一旦设置之后不可修改

b)

?编译器用它来搜索各自的类文件

c)

CLASSPATH是一个目录的列表

d)

解释器用它来搜索各自的类文件

44.

this和super的使用中,正确的是:(两项)

a)

都是一个对象的内存地址//都指的是对象本身的内存地址

b)

super()只能在子类的构造方法中出现

c)

意义相同

d)

可以在任何方法中出现

45. 下面哪些代码能通过编译:(选两项)

a)

int i=0;

if(i) {

System.out.print(i);

}

b)

boolean b=true;

if(b) { System.out.print(b); }

c)

boolean b=true;

if(b==true) { System.out.print(b); }

d)

boolean b=true;

if(b.equals(true))

{

System.out.print(b); }

简单类型不能调用方法

46.

?类MyFrame中有public

static void main(String args[])的声明,在Dos环境下,以java

MyFrame

hello

world运行该类时,以下哪句是正确的(两项)

a)

args[0]的值是hello

b)

args[1] 的值是hello

c)

args[0]的值是world

d)

args[1] 的值是world

47.

在父类中,使用哪个修饰符,子类不可访问其变量(一项)

a)

protected

b)

private

c)

两个都可

d)

都不是

48. Java虚拟机执行的操作包括()。(选择三项)

a)

加载.class文件

b)

将.java文件编译成.class文件

c)

管理内存

d)

执行垃圾回收

e)

解释字节码文件(.class)

49. 在Java语言中,声明公共的抽象方法的正确格式是()。(选择一项)

a)

public abstract void add();

b)

public abstract void add(){}

c)

public abstract add();

d)

public virtual add();

50. 关于字符串方法,正确描述有:(两项)

a)

subString()可以返回一个字符串的部分子串

b)

split()是查找一个字符串是否出现在另一个字符串中

c)

replace()是将一个字符串的部分子串删除

d)

compareTo()用来比较两个字符串的大小

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值