美文网首页
测测你的Java基础

测测你的Java基础

作者: 欧阳锋 | 来源:发表于2017-03-19 20:02 被阅读221次

    Let's get started <<<

    1)关键字volatiletransient各有什么作用?

    2)下面两种使用synchronized关键字的方式有什么区别?

    // 第一种
    synchronized(this) {
          ...
    }
    // 第二种
    synchronized(A.class) {
        ...
    }
    

    3)ArrayList和LinkedList对比,谁的查询效率更高,为什么?

    4)HashMap和LinkedHashMap有什么区别?

    5)如果要你自己实现一个链表,实现数据的增删改查,需要怎么做?

    6)如果要实现在匿名内部类中访问外部类的父类方法(该方法在外部类中有重写),需要怎么做?

    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,有什么作用?

    9)Java语言防止并发问题有几种解决方案?最佳解决方案是什么?

    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测试题答案”即可查看答案。

    相关文章

      网友评论

          本文标题:测测你的Java基础

          本文链接:https://www.haomeiwen.com/subject/uxhvnttx.html