测测你的Java基础

Let's get started <<<

1)关键字volatiletransient各有什么做用?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测试题答案”便可查看答案。

相关文章
相关标签/搜索