java面试题网

普通会员

216

帖子

75

回复

160

积分

楼主
发表于 2019-04-30 16:09:54 | 查看: 233| 回复: 0

java笔试题中几道有点坑人的多选题

1、提供Java存取数据库能力的包是()
A java.sql
B. java.awt
C. java.lang
D. java.swing
答案:A
分析:
java.awt和javax.swing两个包是图形用户界面编程所需要的包;
java.lang包则提供了Java编程中用到的基础类。

2.下列运算符合法的是()(多选)
A &&
B. <>
C. if
D. =
答案:AD
分析:
&&是逻辑运算符中的短路与;
<>表示不等于,但是Java中不能这么使用,应该是!=;
if不是运算符;
=是赋值运算符。

3.执行如下程序代码,c的值打印出来是()
public class Test1 {
public static void main(String[] args) {
int a = 0;
int c = 0;
do{
--c;
a = a - 1;
} while (a > 0);
System.out.println(c);
}
}
A 0
B. 1
C. -1
D. 死循环
答案:C
分析:
do-while循环的特点是先执行后判断,所以代码先执行--c操作,得到c为-1,之后执行a=a-1的操作,得到a为-1,然后判断a是否大于0,判断条件不成立,退出循环,输出c为-1。

4.下列哪一种叙述是正确的()
A abstract修饰符可修饰字段,方法和类
B. 抽象方法的body部分必须用一对大括号{}包住
C. 声明抽象方法,大括号可有可无
D. 声明抽象方法不可写出大括号
答案:D
分析:
abstract只能修饰方法和类,不能修饰字段;
抽象方法不能有方法体,即没有{};
同B。

5.下列哪种说法是正确的()
A 实例方法可直接调用超类的实例方法
B. 实例方法可直接调用超类的类方法
C. 实例方法可直接调用其他类的实例方法
D. 实例方法可直接调用本类的类方法
答案:D
分析:
实例方法不可直接调用超类的私有实例方法;
实例方法不可直接调用超类的私有的类方法;
要看访问权限。

6.Java程序的种类有()(多选)
A 类 (Class)
B. Applet
C. Application
D. Servlet
答案:BCD
分析:
是Java中的类,不是程序;
内嵌于Web文件中,由浏览器来观看的Applet;
可独立运行的 Application;
服务器端的 Servlet。

7.下列说法正确的有()(多选)
A 环境变量可在编译source code时指定
B. 在編译程序时,所指定的环境变置不包括class path
C. javac —次可同时编译数个Java 源文件
D. javac.exe能指定编译结果要置于哪个目录(directory)
答案:BCD
分析:
环境变量一般都是先配置好再编译源文件。

8.下列标识符不合法的有()(多选)
A new
B. $Usdollars
C. 1234
D. car.taxi
答案:ACD
分析:
new是Java的关键字;
C. 数字不能开头;
D. 不能有“.”。

9.下列说法错误的有()(多选)
A 数组是—种对象
B. 数组属于一种原生类
C. int number[]=(31,23,33,43,35,63)
D. 数组的大小可以任意改变
答案:BCD
分析:
B. Java中的原生类(即基本数据类型)有8种,但不包括数组;
C. 语法错误,应该“{···}”,而不是“(···)”;
D. 数组的长度一旦确定就不能修改。

10.不能用来修饰interface的有()(多选)
A private
B. public
C. protected
D. static
答案:ACD
分析:
能够修饰interface的只有public、abstract以及默认的三种修饰符。

11.下列正确的有()(多选)
A call by value不会改变实际参数的数值
B. call by reference能改变实际参数的参考地址
C. call by reference 不能改变实际参数的参考地址
D. call by reference 能改变实际参数的内容
答案:ACD
分析:
Java中参数的传递有两种,一种是按值传递(call by value:传递的是具体的值,如基础数据类型),另一种是按引用传递(call by reference:传递的是对象的引用,即对象的存储地址)。前者不能改变实参的数值,后者虽然不能改变实参的参考地址,但可以通过该地址访问地址中的内容从而实现内容的改变。

12.下列说法错误的有()(多选)
A 在类方法中可用this来调用本类的类办法
B. 在类方法中调用本类的类方法时可以直接调用
C. 在类方法中只能调用本类中的类方法
D. 在类方法中绝对不能调用实例方法
答案:ACD
分析:
类方法是在类加载时被加载到方法区存储的,此时还没有创建对象,所以不能使用this或者super关键字;
C. 在类方法中还可以调用其他类的类方法;
D. 在类方法可以通过创建对象来调用实例方法。

13.下列说法错误的有()(多选)
A Java面向对象语言容许单独的过栈与函数存在
B. Java面向对象语言容许单独的方法存在
C. Java语言中的方法属于类中的成员(member)
D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
答案:ABC
分析:
B. Java不允许单独的方法,过程或函数存在,需要隶属于某一类中;
C. 静态方法属于类的成员,非静态方法属于对象的成员。

14.下列说法错误的有()(多选)
A 能被java.exe成功运行的java class文件必须有main()方法
B. J2SDK就是Java API
C. Appletviewer.exe可利用jar选项运行.jar文件
D. 能被Appletviewer成功运行的java class文件必须有main()方法
答案:BCD
分析:
B. J2SDK是sun公司编程工具,API是指的应用程序编程接口;
C. Appletviewer.exe就是用来解释执行java applet应用程序的,一种执行HTML文件上的Java小程序类的Java浏览器;
D. 能被Appletviewer成功运行的java class文件可以没有main()方法。

15.请问0.3332的数据类型是()
A float
B. double
C. Float
D. Double
答案:B
分析:
小数默认是双精度浮点型即double类型的。

16.Java接口的修饰符可以为()
A private
B. protected
C. final
D. abstract
答案:D
分析:
能够修饰interface的只有public、abstract以及默认的三种修饰符。

17.不通过构造函数也能创建对象么()
A 是
B. 否
答案:A
分析:
Java创建对象的几种方式:
(1) 用new语句创建对象,这是最常见的创建对象的方法。
(2) 运用反射手段,调用java.lang.Class或者
java.lang.reflect.Constructor类的newInstance()实例方法。
(3) 调用对象的clone()方法。
(4) 运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法。
(1)和(2)都会明确的显式的调用构造函数;(3)是在内存上对已有对象的影印,所以不会调用构造函数;(4)是从文件中还原类的对象,也不会调用构造函数。

18.下列语句正确的是()
A 形式参数可被视为local Variable
B. 形式参数可被视为local Variable
C. 形式参数可被所有的字段修饰符修饰
D. 形式参数为方法被调用时,真正被传递的参数
答案:A
分析:
local Variable为局部变量,形参和局部变量一样都只有在方法内才会发生作用,也只能在方法中使用,不会在方法外可见;
对于形式参数只能用final修饰符,其它任何修饰符都会引起编译器错误;
真正被传递的参数是实参;
形式参数可是基本数据类型也可以是引用类型(对象)。


您需要登录后才可以回帖 登录 | 立即注册

java面试题网无聊看看网与java建站系统提供技术支持V2.1 网站地图 © 2016-2018