Java面试通关宝典—Java基础01错题集

1、(单选题)下列的标识符符合Java命名约定的是()

A.package com.Bi.hr

B.public class xyz

C.int I

D.void setCustomerName()

【正确答案】D

【答案解析】包的名字应该都是由小写单词组成。它们全都是小写字母,即便中间的单词亦是如此,所以A选项错误。 类名的第一个字母一定要大写,所以B选项错误; 变量的第一个字母应该为小写,所以C选项错误; 与属性相对应的get、set方法为:set(get)+属性名,属性名第一个字母为大写,所以D选项正确。

2、(单选题)在Java中,以下描述错误的是( )

A..class是源文件

B..java是编译前的源文件

C..class是编译后的文件

D.Java程序需编译后方可运行

【正确答案】A

【答案解析】此题目考查的是Java程序的开发过程。Java程序开发需要经过三个步骤:编写(.java)、编译(.class)、运行。编写的源程序为.java后缀的,编译后为.class的字节码文件,因此选项B、C是正确的,A是错误的。Java文件都需要进行编译,编译后的.class文件可以"一次编译、多次运行",即体现了Java的特点"Write Once,Run more"。因此D是正确的选项。

3、(单选题)以下表达式那个是不合法的()

A.String x="Hello"; int y=9; x+=y;

B.String x="Hello"; int y=9; if(x==y) { }

C.String x="Hello"; int y=9; x=x+y;

D.String x=null; int y=(x!=null)&&(x.length()>0) ? x.length() : 0;

【答案解析】java中+号除了有连接字符串的作用,还能将字符串和其他数据类型连接起来,输出也是字符串,如果第一个操作数是字符串,则java会自动将后面的数据类型转换为字符串,所以AC正确,输出Hello9,D是三相运算符,不满足,则为0。

4、(多选题)byte b1=1,b2=2,b3,b6,b8; final byte b4=4,b5=6,b7; b3=(b1+b2); /*语句1*/ b6=b4+b5; /*语句2*/ b8=(b1+b4); /*语句3*/ b7=(b2+b5); /*语句4*/ System.out.println(b3+b6); 下列代码片段中,存在编辑错误的语句是()

A.语句2

B.语句1

C.语句3

D.语句4

【正确答案】B,C,D

【答案解析】b1+b2会自动转为int类型,所以要加强转,b3=(byte)(b1+b2);b4,b5是final类型,不会自动提升,所以和的类型视左边的变量类型而定;b7是final类型,即可赋值一次,便不可再赋值。

5、(多选题)下列哪些选项属于Java技术体系()

A.Java Me

B.Java Se

C.Java EE

D.Java Card

【正确答案】A,B,C,D

【答案解析】Java Me,Se,EE,Card都是java技术体系。

6、(多选题)下面的哪些声明是合法的( )

A.long l = 4990

B.int i = 4L

C.float f =1.1

D.double d = 34.4

【正确答案】A,D

【答案解析】B.4L应该是long类型的写法。C.1.1是double类型,float f=1.1f是正确写法。int类型可以赋给long类型

7、java的八种数据类型为byte short int long char boolean float double

8、(多选题)下列选项中创建数组能够编译通过的是( )

A.int[] ia = new int [15];

B.float fa = new float [20];

C.char[] ca = "Some String";

D.Object oa = new float[20];

【正确答案】A,D

【答案解析】任何类的父类都是引用类型Object,数据属于引用类型,D相当于父类的引用指向子类的实例。

9、变量不能以数字开头

10、(多选题)下列对Java语言的叙述中,正确的是()

A.Java虚拟机解释执行字节码

B.Java的类是对具有相同行为对象的一种抽象

C.Java中的垃圾回收机制是一个系统级的线程

D.JDK的库文件目录是bin

【正确答案】A,B,C

【答案解析】在JDK目录下,lib目录存放的是库文件,bin目录下有编译器,解释器和其他工具(如服务器工具,package工具)

11、java中使用"\"转义。

12、(单选题)对记录序列{314,298,508,123,486,145}按从小到大的顺序进行插入排 序,经过两趟排序后的结果为()

A.{314,298,508,123,145,486}

B.{298,314,508,123,486,145}

C.{298,123,314,508,486,145}

D.{123、298,314,508,486,145}

【正确答案】B

【答案解析】此题为插入排序算法,代码如下:

public static void injectionSort(int[] number) { // 第一个元素作为一部分,对后面的部分进行循环

     for (int j = 1; j < number.length; j++) {

             int tmp = number[j];

             int i = j - 1;

            while (tmp < number[i]) {

                   number[i + 1] = number[i];

                   i--;

                   if (i == -1) break;

                    }

                  number[i + 1] = tmp; } }

13、(单选题)下列运算符合法的是()

A.&&

B<>

C.if

D.:=

【正确答案】A

【答案解析】java 中没有<> := 这种运算符, if else不算运算符

14(多选题)下列描述中,哪些符合 Java 语言的特征( )

A.支持跨平台(Windows,Linux,Unix等)

B.GC(自动垃圾回收),提高了代码安全性

C.支持类 C 的指针运算操作

D.不支持与其它语言书写的程序进行通讯

【正确答案】A,B

【答案解析】java语言支持跨平台,没有指针概念,拥有GC垃圾回收机制

15 ^ 异或

16、(多选题)从下列选项中选择正确的是( )

A.int k=new String("aa");

B.String str=new String("bb");

C.char c=74;

D.long j=8888;

【正确答案】B,C,D

【答案解析】A选项创建的是String对象,变量k应为String类型

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值