1)关键字volatile、transient各有什么做用?bash
2)下面两种使用synchronized关键字的方式有什么区别?微信
// 第一种
synchronized(this) {
...
}
// 第二种
synchronized(A.class) {
...
}
复制代码
3)ArrayList和LinkedList对比,谁的查询效率更高,为何?并发
4)HashMap和LinkedHashMap有什么区别?测试
5)若是要你本身实现一个链表,实现数据的增删改查,须要怎么作?this
6)若是要实如今匿名内部类中访问外部类的父类方法(该方法在外部类中有重写),须要怎么作?spa
7)执行下面的代码可能输出的结果是什么?为何?指针
List<Person> persons = new ArrayList<Person>();
persons.add(xxx)
persons.add(xxx)
....
Person person = xxx;
int index = persons.indexOf(person);
System.out.println("Index = " + index);
复制代码
8)什么是ThreadLocal,有什么做用?code
9)Java语言防止并发问题有几种解决方案?最佳解决方案是什么?cdn
10)下面的代码会触发空指针异常吗?若是会,有没有什么更好的写法?视频
if(obj instanceOf Person) {}
if(str.equals("abc")) {}
复制代码
一共十道题,若是你刚好一道都不会。恭喜你,你果真基础差到爆,推荐你去看马士兵的Java基础视频,不要问我马士兵是谁哦。
下面是你的基础等级:
答对 | 评分 | 评价 |
---|---|---|
1~4 | 10 ~ 40 | 基础较差 |
4~6 | 40 ~ 60 | 基础通常 |
6~8 | 60 ~ 80 | 基础较好 |
>8 | 80 ~ 100 | 基础扎实 |
若是你对上面的测试题有任何疑问的话,请微信搜索公众号欧阳锋工做室,点击关注,答案会经过微信公众号推送给你们。也能够经过微信扫描下方的二维码关注欧阳锋工做室公众号,我在公众号等你哦。
加倍努力,证实你想要的不是空中楼阁,胜利每每是在屡次失败以后才姗姗而来
加油!You can do it。
关注微信公众号欧阳锋工做室,并回复“Java测试题答案”便可查看答案。