美文网首页
【JAVA】京东一面

【JAVA】京东一面

作者: Y了个J | 来源:发表于2020-07-22 11:15 被阅读0次

    1、类加载机制概念、加载步骤、双亲委托机制、全盘委托机制、类加载器种类及继承关系

    2、如何实现让类加载器去加载网络上的资源文件?怎么自定义类加载器?自定义的加载器还符合双亲委托机制吗?怎么打破双亲委托机制?

    3、实例化对象的方式有几种?

    4、由Object类的clone方法引申到深复制和浅复制的区别

    5、反射的概念、用法、实践

    6、Java内存模型和JVM内存结构

    7、有一台4核8G的机器,该给JVM里的堆区和虚拟机栈分配多大的内存?(初始值、最大值、堆区年轻代和老年代的分配比例等等)

    8、堆内存中的年轻代分配内存过少或过多分别有什么影响?复制算法导致Stop-the-World吗?

    9、哪些参数可以设置JVM中的内存分配?

    10、需要在线程范围内去共享一个变量,怎么实现?ThreadLocal源码实现、Key弱引用导致的内存泄露、怎么避免?

    11、volatile的作用、实现机制、缓存一致性实现

    12、AtomicInteger原子类的作用、源码实现机制

    13、CAS无锁算法概念、源码实现机制、Unsafe类源码延伸到HotSpot虚拟机对应的C++方法再延伸对应的汇编函数

    14、ReentrantLock中非公平锁的源码实现、AQS源码实现、为什么需要自旋锁?锁膨胀的过程?

    15、线程池的使用场景、常用参数、拒绝策略

    16、阻塞队列的种类、底层数据结构和使用场景

    17、手写BIO的Socket编程、BIO和NIO的区别

    18、Netty线程模型、零拷贝、粘包拆包、心跳机制、Pipeline源码

    19、责任链模型、策略模式、模板模式、设计模式里的原则

    20、Top K问题,找到上千万个数字中从大到小的前10个数字

    21、MySQL中的聚集索引和稀疏索引区别、索引是越多越好吗?什么样的字段适合建索引?

    22、索引覆盖和回表的概念、怎么避免回表?

    23、为什么采用B+树而不用AVL树?

    24、事务的底层实现

    25、MVCC的概念及实现机制

    26、Redis为什么这么快?为什么不用多线程?

    27、哈希表查询的时间复杂度、哈希冲突的解决方法?

    28、Sorted Set的应用场景、跳表的实现、查询和插入的时间复杂度?

    29、Dubbo的应用场景、底层通信组件、服务降级、负载均衡、接口暴露、序列化方式、让你实现一个简单的RPC框架你会怎么做?

    30、Zookeeper的应用场景、watch机制、领导者选举算法、ZK实现分布式锁

    31、对称加密、非对称加密、数字证书、HTTPS的连接过程、SSL加密一定安全吗?SSL在哪一层实现加密?

    32、OSI七层协议?路由器工作在那一层?HTTP、TCP、FTP、DNS工作在哪一层?

    33、ARP协议的作用及流程

    34、Git的操作、代码冲突的解决方法

    35、Redis的缓存穿透、缓存雪崩、数据一致性的解决方案

    36、Elasticsearch的倒排索引、index和document的概念、脑裂问题

    37、RabbitMQ应用场景、生产/消费者和发布/订阅模式概念和应用、数据丢失问题

    38、商品超卖的解决方法、MySQL乐观锁和Redis乐观锁

    39、手写SQL:有一个成绩表,表里有三个字段分别是姓名、课程和成绩,求平均分大于85分的学生姓名和平均成绩。

    SELECT 
    t.name,t.avgScore
    FROM 
    (
        select name,avg(score) AS avgScore from student GROUP BY name
    ) t
    WHERE t.avgScore > 85
    

    40、算法:写归并排序和快排、分析时间复杂度、怎么评定是不是一个稳定的排序算法?

    相关文章

      网友评论

          本文标题:【JAVA】京东一面

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