javaSE基础测试题

这是一篇关于JavaSE基础测试题的解析,涵盖了源文件扩展名、合法标识符、赋值语句、编译运行规则等多个核心知识点,适合初学者自我检测和巩固Java基础知识。
摘要由CSDN通过智能技术生成

这套题目是传智播客javaEE入学测试题,我是在自己学完javaSE之后做的套题,感觉这套题考察的内容很基础,很适合自学javaSE的自测。全套试题有50个选择题,单选和多选都有,每道题2分,80分合格,快来看看你能考多少分吧!


1. JAVA中,下列哪些说法是正确的( AC )  

A.java源文件的扩展名为.java    //正确

B.写好的java源程序可以直接运行  //源程序需要先编译才能运行

C.编写的源程序必须先编译后才能运行  //正确

D.程序员可以读懂扩展名为.class的文件  //class文件为字节码文件,看不懂


2.下列标识符哪个是合法的( BD )

A.class

B.$abc

C.1234

D._name

变量名必须是一个以字母开头的由字母和数字构成的序列。需要注意的是,与大多数程序设计语言相比,java中的字母和数字的范围要大。字母包括‘A’~‘Z’、‘a’~'z'、‘_’、‘$’或在其他某种语言中代表字母的任何Unicode字符。


3.下面哪些赋值语句是正确的?(ABD)

A. long test = 012; //正确

B. float f = -412; //正确

C. int other = (int) true;//布尔型不能强转成整型

D. double d = 0x12345678;//正确,在double的范围内

E. byte b = 128;   //错误,-128~127


4.Java中,下列语句不能通过编译的有( BD)

A. String s= “join”+ 3; //正确,整型可以通过这种方式转换成字符串类型

B. int a= “join”+3;//错误,字符串类型不能这样转换成整型

C. int a= ‘a’+5;//正确,字符型可以转换成整型

D. float f=5+5.5;//错误,5.5的默认类型为double类型,转换成float类型需要进行强转


5.a = 3,则表达式(--a )< < a的结果为( B )

A. 16

B. 8

C. 24

D. 12

这个题目主要考察的是运算符的优先级和对为运算符的运用。具体的运算过程如下:

先计算小括号里面的--a,变成了2<<2,即将0010向左移动2位,变成了1000,即等于8


6.下列代码运行的结果是(  C ) 

public static void main(String[] args) {

int x = 4;

int y = 5;

if(x++>4 & ++y>5) {

x++;

}

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

}

A. x=4,y=5

B. x=4,y=6

C. x=5,y=6

D. x=6,y=6

此题主要考察的自增运算符的运用。x++,即先用x的值之后再将x+1,++x即先将x+1,然后再进行运算。

这个题目还有一点,就是&运算符,&与&&都是位运算符,但两者之间又有区别,读者可以自己去思考一下这个问题


7.尝试运行下面的代码会发生什么?( B )  

public class Test {

public static void main(String[] args) {

boolean m = true;

if (m = false) {

System.out.println("true");

} else {

System.out.println("false");

}

}

}

A.输出字符串”true”

B.输出字符串”false”

C.编译时错误

D.运行时错误

此题主要问题在if(m = false),很多人可能选C,觉得 “=” 是赋值符,如果将“=”改成“==”这个题目就选B 了,不然编译不能通过。其实我们忽略了m本身声明时就说boolean型,所以这里可以用“=”对m进行赋值。


8.编译并运行以下代码将发生什么? ( E ) 

public static void main(String args[]){

char digit = 'a';

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

switch (digit)

{

case 'x' :

{

int j = 0;

System.out.println(j);

}

default :

{

int j = 100;

System.out.println(j);

}

}

}

int i = j;

System.out.println(i);

}

A.输出11100

B.输出10100,然后抛出运行期异常

C.编译错误,因为变量i不能在main()方法中被声明2

D.编译错误,因为变量j不能在main()方法中被声明2

E.以上都不对

此题是编译无法通过,因为变量j在main()中没有声明,而switch里面的j只能在各自的case里面有效


9. class Demo   

{

public static int fun(int c)

{

return c+=2;

}

public static void main(String[] args)

{

int temp = fun(2);

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值