java后端工程师笔试易错题

亲测笔试题

1.producLine列已经添加索引,下面哪些会使用到索引
A:select* from products where producLine LIKE  \"%abc\"B:select* from products where producLine LIKE  \"%abc%\"C:select* from products where producLine LIKE  \"abc%\"D:select* from products where substr(producLine,2)=\"abc\"

答案:c

2.(a,b,c)创建联合索引,下面哪些能使用到索引
A:select * from game_order where plat_game_id=5 and plat_id=134B:select * from game_order where plat_id=134 and plat_game_id=5 and plat_order_id=’100’C:select * from game_order where plat_order_id=’100’D:select * from game_order where plat_game_id=5 and plat_order_id=’100’ and plat_id=134E:select * from game_order where plat_game_id=5 and plat_order_id=’100’

答案:B C D E

3.下列描述错误的是
A:private类成员,不能被其他类访问,包括父类和子类
B:public类成员,能被其他所有类访问
C:protect类成员,能够被父类和子类访问
D:如果不加上述三个描述词,即为默认类成员,只能被同一个包内的类访问
E:内部类的private成员不能被外部类访问

答案:C,E

4.下面哪些函数能让线程离开运行状态
A: yield()
B: wait()
C: notify()
D: notifyAll()
E: sleep(1000)
F: aLiveTread.join()
G: Thread.killThread()

答案:B,E,F

5.下面类型威final类型的为
A: HashMap
B: StringBuffer
C: String
D: Hashtable

答案:B,C

三个都属于引用(地址)不可变,但StringBuffer和Stringbuilder对象可以改变

6.有程序片段如下,下面表达式结果为false的有哪些
Float s=new Float(0.1f);
Float t=new Float(0.1f);
Double u=new Double(0.1);A: s==t
B: s.equals(t)
C: u.equals(s)
D: t.equals(u)

答案:A,C,D

Float和Double都重写了equals方法,在比较之前都先判断类型是否和前者一致,不一致直接返回false

7.下面有关java object类默认的基本方法,说法错误的是?
A: equal(Object obj)指示某个其他对象是否与此对象“相等”
B: toString() 返回该对象的字符串表示
C: wait()导致当前线程等待,直到其他线程调用此对象的notify()方法或者notifyAll()方法
D: copy()创建并返回此对象的一个副本

答案:D

object类中没有copy方法

8.下面说法错误的是
A: 虚拟机中没有泛型,只有普通类和普通方法
B: 所有泛型类的类型参考在编译时都会被擦除
C: 创建泛型对象时,请指明类型,让编译器今早的做参数检查
D: 泛型的类型擦除机制意味着不能在运行时动态获取List中的T实际类型

答案 D

Java泛型是使用擦除来实现的,这意味着当你在使用泛型时,任何具体的类型信息都被擦除了,你唯一知道的就是你在使用一个对象。因此List和List在运行时实际上是相同的类型。这两种类型都被擦除成它们的“原生”类型,**即List。

9.关于匿名内部类叙述正确的是?
A: 匿名内部类不可以定义构造器
B: 匿名内部类不能用于形参
C: 匿名内部类可以继承一个基类,不可以实现一个接口
D: 以上说法都不正确
10.序列化Circle的对象到文件里,哪些字段会保存到文件中
class Shape{public String name;
}
class Circle extends Shape implements Serializable{private float radius;transient int color;public static String type="Circle";
}

答案:name,radius;

11.下面不是java关键字是
A: double
B: default
C: integer
D: float

答案 C

12.java字符类型采用Unicode编码,所占字节个数由具体软件硬件环境决定
A: 错误
B: 正确

答案: A

13.对Map的用法,正确的有
A: new Map().put("key","value")
B: new TreeMap().put(0,null)
C: new SortedMap().put("key","value")
D: new HashMap.put(null,null)

答案:B,D

A,C不能直接new、

14.Rest架构的主要原则,描述错误的是
A:所有的操作都有状态的
B:每个资源都有一个唯一的资源标识符
C:网络上所有事务都被抽象为资源
D:同一个资源具有多种表现形式(xml,json等)

答案: A :都是无状态连接

15.以下说法错误的是
A: 虚拟机中没有泛型,只有普通类和普通方法
B: 所有泛型类的类型参考在编译时都会被擦除
C: 创建泛型对象时,请指明类型,让编译器尽早做参数检查
D: 泛型的类型擦除机制意味着不能在运行时动态获取List中的T的实际类型

答案:D

解析: 可以通过反射获取泛型信息

16.程序运行结果为
class Foo{final int i;int j;public void doSomething(){System.out.println(++j + i);}
}A:0
B:1
C:2
D:不能执行,因为编译有错

答案:D

final修饰成员变量必须直接初始化或在构造函数中初始化

final修饰局部变量必须在使用之前赋值

例如:

public class Test {final int a;public Test(int a) {this.a = a;}public static void main(String[] args) {final int g;g=0;System.out.println(g);}
}
17.下面说法正确的是
a = Integer.parseInt("12");
b = Integer.valueOf("12").intValue();A:a变量,b对象
B:b变量,a对象
C:都是对象
D:都是变量

答案: D

18.串是一种特殊的线性表,其特殊性他现在
A:数据元素是一个字符
B:可以顺序存储
C:数据元素可以是多个字符
D:可以链接存储

答案:A

19.编译一个定义了5个类和18个方法的Java源代码文件,会产生几个字节码文件
A:1
B:23
C:5
D:18

答案:C

20.Java的字符类型采用的是unicode编码方案,每个unicode码占用几个比特位
A:32
B:8
C:64
D:16
21.在windows环境下,能正确启动java程序的语句是
A: java common-lang.jar;test.jar com.test.TestJar
B: java common-lang.jar:test.jar com.test.TestJar
C: java -cp common-lang.jar;test.jar com.test.TestJar
D: java -cp common-lang.jar:test.jar com.test.TestJar

答案:C java -cp 是另一种启动方式

22.java把变量声明成暂时性变量,应使用
A: transient
B: protectd
C: volatile
D: provate

答案: A

23.以下数组定义中不正确的是
A: int c[100][100]={0};
B: int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
C: int a[2][3];
D: int b[][3]={0,1,2,3};

答案: A,B,C,D

24.以下对jdbc事务描述错误的是
A: JDBC事务属于java事务的一种
B: JDBC事务属于容器事务类型
C: JDBC事务可以保证操作的完整性和一致性
D: JDBC事务是由connection发起的,并由connection控制

答案: B

Java事务三种类型:JDBC事务、JTA事务、容器事务


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部