美文网首页
JDK问题与解答

JDK问题与解答

作者: Real_man | 来源:发表于2019-02-08 14:12 被阅读80次

常见JDK问题

  1. 红黑树的实现原理和应用场景;
    红黑树有几个性质:
  • 节点是红色或黑色。
  • 根是黑色。
  • 所有叶子都是黑色(叶子是NIL节点)。
  • 每个红色节点必须有两个黑色的子节点。(从每个叶子到根的所有路径上不能有两个连续的红色节点。)
  • 从任一节点到其每个叶子的所有简单路径都包含相同数目的黑色节点。

HashMap在链表数量过长之后会转换成红黑树,TreeMap的实现。

待补充..

  1. NIO是什么?适用于何种场景?
IO NIO
面向流 面向缓冲
阻塞IO 非阻塞IO
选择器

NIO好处:

  • 事件驱动模型
  • 避免多线程
  • 单线程处理多任务
  • 非阻塞I/O,I/O读写不再阻塞,而是返回0
  • 基于block的传输,通常比基于流的传输更高效
  • 更高级的IO函数,zero-copy
  • IO多路复用大大提高了Java网络应用的可伸缩性和实用性

参考:Java NIO浅析

  1. Java9比Java8改进了什么?
  • 模块化,Jigsaw
  • 新的Http Client,支持Http2和WebSocket,性能提升
  • Process API,进程的API,控制和管理操作系统的进程
  • JShell
  • 统一的JVM日志
  • 发布-订阅框架

参考:Java 9 New Features

  1. HashMap内部的数据结构是什么?底层是怎么实现的?(还可能会延伸考察ConcurrentHashMap与HashMap、HashTable等,考察对技术细节的深入了解程度);

参考:

  1. 说说反射的用途及实现,反射是不是很慢,我们在项目中是否要避免使用反射;
    反射机制指的是程序在运行时能够获取自身的信息。在java中,只要给定类的名字,那么就可以通过反射机制来获得类的所有属性和方法。

优点:反射提高了程序的灵活性和扩展性。
缺点:

  • 代码可读性低及可维护性
  • 反射代码执行的性能低
  • 破坏了封装性。

获取反射:
1.根据对象的引用.getClass()方法获取:MyObject object=new MyObject(); Class c=object.getClass();
2.根据类名.class获取:Class c=MyObject.class;
3.根据Class中的静态方法Class.forName(); Class c=Class.forName("MyObject");

在业务代码中应该尽量避免使用反射,但是对于框架的反射要明白其使用方式。

  1. 说说自定义注解的场景及实现;
    答:除了元注解,都是自定义注解。通过元注解定义出来的注解。
    如我们常用的Override 、Autowire等。日常开发中也可以自定义一个注解,这些都是自定义注解。
    @Target
    @Retention
    @Documented
    @Inherited

  2. List 和 Map 区别,Arraylist 与 LinkedList 区别,ArrayList 与 Vector 区别;

  3. Integer的缓存机制


    image.png

最后

待完善

相关文章

  • JDK问题与解答

    常见JDK问题 红黑树的实现原理和应用场景;红黑树有几个性质: 节点是红色或黑色。 根是黑色。 所有叶子都是黑色(...

  • 问题与解答

    问题: 思维黏滞的时间过长,大脑的碎片化信息过载,该怎么办? 问题描述: 我发现我脑子里的信息流很大,但是都是零零...

  • 问题与解答

    Q:经历有限,不要做什么? A1:不要抱怨,敢于担当和面对 A2:不要轻易给别人建议,除非你用培育的心情对待对方 ...

  • 问题与解答

    我的问题其实是在于,面对外界反馈,不想受伤。 第一,外界的评价是什么,语言三个表现是传递内容+请求+评价,往往我们...

  • IOS问题与解答

    对KVO原理的理解: 问:如何手动触发一个value的KVO 答:主动调用: willChangeValueFor...

  • Dubbo问题与解答

    常见Dubbo问题 Dubbo完整的一次调用链路介绍;image 这是常有的调用方式,不同的RPC框架不过在这种调...

  • 打开IDEA报错,Failed to load JVM DLL…

    这是因为jdk安装的问题,卸载重新装即可。 网上给的这个解答感觉比较靠谱,贴上来供大家参考。

  • Hbase问题汇总与解答

    今天早上分享了下HBase,分享的时候同事提出了一些问题,可能大部分有有这样的困惑,汇总下来: HBase问题汇总...

  • SSM相关问题与解答

    常见框架相关问题,包含一些分布式问题 Spring AOP的实现原理和场景? AspectJAwareAdviso...

  • 线程池系列(4)tomcat实现ThreadPoolExecut

    高频面试题:tomcat的线程池和JDK的线程池有什么区别?解答这个问题前,我们需要分析下tomcat如何重写JD...

网友评论

      本文标题:JDK问题与解答

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