首页 > 代码库 > Java笔试题
Java笔试题
所有内容都是在网上查找的
1.下面哪些是Thread类的方法?
A.Start() B.run()方法 C.exit()方法 D. getPriority()方法
解析:exit()方法 是 System类的方法
2.GC线程是否为守护线程?
答:是
解析:线程分为(1)守护线程(2)非守护线程
只要当前jvm尚存任何一个非守护线程,守护线程就全部工作。
3.Volatile关键字是否能保证线程安全?
答:不能
解析:Volatile关键字用在多线程同步,可保证读取的可见性。
4.存在使 i+1<i的数么?
答:存在
解析:如果i为int型,那么当i为 int 能表示的的最大整数时,i+1就溢出变成为负数。
5.0.6332的数据类型是?
A float B double C Float D Double
答:B
解析:浮点型数默认为 double类型,若为float类型 要加上 f。 如: 0.6332f
6.不通过构造函数也能创建对象么?
答:是
解析:java创建对象的几种方式(重要)
(1)使用new语句创建对象。
(2)运用反射手段。调用java.lang.class 或 java.lang.reflect.Constructor类的 newInstance()方法。
(3)调用对象的clone()方法。 在内存上对已有对象的影印。
(4)运用反序列化手段。从文件中还原类的对象。
7.ArrayList list = new ArrayList(20);中的list扩充几次?
A 0 B 1 C 2 D 3
答:A
解析:默认ArrayList的长度是10个,如果往list里添加20个元素,肯定要扩充一次。 但是这里显示指明了需要多少空间,所以一次性分配了这么多空间
不需要扩充。
8.下面哪些是对称加密算法?
A DES B AES C DSA D RSA
答: AB
9.java中有没有goto?
有,为保留字,但尚未使用。
10.Set里的元素是不能重复的,那么用什么方法来区分重复与否? == 还是 equals(),它们有什么区别?
答:Set里的元素不能重复,用 iterator()方法来区分重复与否。
equals()方法是判断两个 Set 是否相等。
== 比较内存地址;equals()比较内容
11.List,Set,Map是否继承自 Collection接口?
答: List Set继承自Collection接口; Map不是。
12.接口是否可以继承接口? 抽象类是否可以实现接口? 抽象类是否可以继承实体类?
答: 接口可以继承接口 抽象类可以实现接口 抽象类可以继承实体类;但是前提是实体类有明确的构造函数。
13.构造器 ConStructor 是否可以被 Override 重写?
答:构造器ConStrucot不能被继承,因此不能被重写。
但是可以被重载。
14.是否可以继承 String类?
答:不能
解析:String类时 final 类,因此不能被继承。
15.try{}中有一个 return 语句,那么紧跟在try{}后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后?
答:会执行,在return前执行。
解析:无论如何,finally{}块里的code都会被执行。
16.使用最有效率的方法,算出 2乘以8等于多少?
答: 2<<3 位运算
17.当一个对象被当做参数传递到一个方法后,此方法可改变这个对象的属性,并返回变化后的结果。那么这里用的是值传递,还是引用传递?
答:是值传递。
解析:Java中只有值传递参数。 当一个对象实例作为参数,传递到方法时,参数的值就是对对象的引用。 对象的内容可以在被调用
方法中改变,但对象的引用永远不会变。
18.GC是什么?为什么要有GC?
答:GC是垃圾回收器; 内存处理是编程人员容易出现的问题,忘记或错误的内存回收会导致系统不稳定,甚至崩坏。
19.float型 float f = 3.4是否正确?
答:不正确。
解析:精度不准确,应用强制类型转换。 float f = (float)3.4
20.String与Stringbuffer的区别?
答:String的长度是不可变的,Stringbuffer的长度是可变的。
如果对字符串中的内容经常进行操作,特别是内容要修改,那么用Stringbuffer。若是最后需要String,使用 toString()方法转化。
21.String是java基本数据类型么?
答:不是
解析:八大基本数据类型: 整型: byte short int long
浮点型:float double
字符型: char
布尔型:boolean
22.以下属于面向对象特征的是?
A 重载 B 重写 C 封装 D继承
答:CD
解析:java面向对象的特征(1)封装(2)继承(3)多态
23.多态的表现形式?
A 重写 B 抽象 C 继承 D 封装
答:A
解析:多态的表现形式有两种:
(1)重写 父类与子类间的多态性
(2)重载 一个类中的多态性
24.以下对重载描述错误的是?
A 方法的重载只能发生在一个类内部。
B 构造方法不能重载
C 重载要求方法名相同,参数列表不同。
D 方法的返回值类型,不是区分方法重载的条件。
答:B
解析:构造方法不能被继承,所以不能被重写。
但是可以被重载。
25.以下对抽象类描述正确的是?
A 抽象类中没有构造方法
B 抽象类必须提供抽象方法
C 有抽象方法的类一定是抽象类
D 抽象类可以通过new实例化
答:C
解析:有抽象方法的类一定是抽象类, 抽象类不一定有抽象方法。
26.以下对接口描述错误的是?
A 接口没有提供构造方法
B 接口中的方法 默认使用 public abstract 修饰
C 接口中的属性 默认使用 public static fina修饰
D 接口不允许多继承
答:D
解析:java中支持 单继承 多实现
27.接口和抽象类描述正确的有?
A 抽象类没有构造方法
B 接口没有构造方法
C 抽象类不允许多继承
D 接口中的方法可以有方法体
答:BC
28.以下描述错误的是:
A abstract 可以修饰类、接口、方法
B abstract 修饰的类主要用于被继承。
C abstract 可以修饰变量
D abstract 修饰的类的子类也可以是 abstract 类
答:C
29.以下描述正确的是?
A 方法的重写应用在一个类内部
B 方法的重载与返回值类型无关。
C 构造方法不能重载
D 构造方法可以重写
答:B
30.以下对异常的描述不正确的是?
A 异常分为 Error 和 Exception
B Throwable 是所有异常的父类
C Exception 是所有异常的父类
D Exception 包括 RuntimeException 和 非 RuntimeException
答:C
解析: Throwable
Error Exception
RuntimeException 其他
31.在 try - catch- finally 语句块中,以下可以单独和 finally一起使用的是?
A catch B try C throws D throw
答:B
32.以下描述错误的是?
A try 块不能省 B 可以使用多重catch块 C finally块可以省略 D catch块和finally块可以同时省略
答:D
解析: try catch 或 try finally 或 try catch finally
33.java.lang包的 方法,比较两个对象是否相等?相等返回值 true
A toString B equals() C Compare() D以上的不正确
答:B
解析:equals()方法比较内容是否相同。
34.使用 方法可以获得Calendar类的实例?
A get B equals C getTime D getLnstance
答:D
35.下写说法正确的有?
A class中的 Constructor不可省略。
B Constructor必须与类同名,方法不能与类同名。
C Constructor在一个对象new 时执行。
D 一个class只能定义一个Constructor.
答:C
解析:普通方法可与类同名。
36.java是从 语言改进重新设计的。
A Ada B c++ C Pasacal D BASIC
答:B
37.下列语句哪一个正确?
A java程序编译后会产生 machine code
B java程序变编译后会产生 byte code
C java程序编译后会产生 DLL
D 以上都不正确
答:B
38.提供java存取数据库能力的包是?
A java.sql B.java.awt Cjava.lang D java.swing
答:A
39.下列哪一种叙述正确?
A abstract修饰符可以修饰 字段、方法、类
B 抽象方法的body部分必须用 {}包住。
C 声明抽象方法 {}可有可无
D 声明抽象方法,不可写出{}
答:D
解析:abstract不能修饰字段,抽象方法没有方法体。
40.不能用来修饰interface的有?
A private B public C protected Ds tatic
答:ACD
解析:interface 只能是public,加不加修饰符都是public
备注:java程序中的起始类名必须与存放该类的文件名相同。
Unicode是用16位表示一个字的。 一个汉字占2个字节,一个字节 8 位。
Java笔试题