Java面试之基础篇

作者: Marlon1993 | 来源:发表于2021-04-08 08:50 被阅读0次

    一:基础知识

    1:面向对象编程的三大特征:封装、继承、多态

    2:重载与重写得区别

    3:String、StringBuffer、StringBuilder的区别

    4:接口和抽象类的区别

    5:浅拷贝与深拷贝

    二:Java集合

    1:谈谈你对集合的理解及三大集合的区别与联系

    2:ArrayList与LinkedList的区别

    3:HashMap、HashTable、CurrentHashMap的区别及底层实现

    4:由CurrentHashMap引申出CAS

    三:多线程

    1:线程、进程之间的关系及优缺点

    2:线程得生命周期及状态

    3:线程死锁,如何避免线程死锁?

    4:说说Synchronized关键字的理解,及Synchronized的底层实现

    5:讲一讲JMM(Java内存模型)

    6:说说Synchronized和volatile 关键字的区别

    7:线程池的定义、如何创建线程池、线程池的原理

    8:JUC 包中的原⼦类是哪 4 类?

    9:AQS 的全称为( AbstractQueuedSynchronizer ),这个类在 java.util.concurrent.locks 包下⾯。

    四:JVM(java虚拟机)

    1:介绍下 Java 内存区域(运⾏时数据区)

    线程共享:堆、方法区

    线程私有:虚拟机栈、本地方法栈、程序计数器

    1.8引入元空间(Matespace)

    2:对象的创建过程

    类加载检查》内存分配》初始化零值》设置对象头》执行init方法

    3:聊聊 JVM 内存分配与回收

    4:垃圾收集有哪些算法,各⾃的特点?

    5:JVM调优

    五:Java IO流

    连接:https://www.imooc.com/article/24305

    谈谈你对NIO流的理解:https://blog.csdn.net/forezp/article/details/88414741/

    六:Java 8 新特性

    https://blog.csdn.net/harryptter/article/details/87162620

    相关文章

      网友评论

        本文标题:Java面试之基础篇

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