Code Monkey home page Code Monkey logo

javalearing's Introduction

JavaLearning

春招、秋招、实习java后端开发基础面试必备

记录java后端学习笔记,主要是经典书籍的脑图。

图片本身较大,网页查看不清晰,建议下载到本地阅读

1.java基础问题

2.实习Java后端面经分享:

跟谁学

  • 聊一聊Jvm内存区域?每个区域的作用

  • 类加载的过程?

    我们所说的类的加载过程是指JVM虚拟机把class文件中类信息加载进内存,并进行解析生成对应的class对象的过程。

  • 为什么要将永久代PermGen替换为元空间MetaSpace?

    1.整个永久代有一个 JVM 本身设置固定大小上限,无法进行调整,而元空间使用的是直接内存,受本机可用内存的限制,虽然元空间仍旧可能溢出,但是比原来出现的几率会更小。

    当你元空间溢出时会得到如下错误: java.lang.OutOfMemoryError: MetaSpace

    你可以使用 -XX:MaxMetaspaceSize 标志设置最大元空间大小,默认值为 unlimited,这意味着它只受系统内存的限制。-XX:MetaspaceSize 调整标志定义元空间的初始大小如果未指定此标志,则 Metaspace 将根据运行时的应用程序需求动态地重新调整大小。

    2.元空间里存放的是类的元数据,这样加载多少类的元数据就不由MaxPermSize控制了,而是由系统的实际可用空间来控制这样就能加载很多类了。

  • Mysql主键索引和唯一索引的区别?为什么主键索引比唯一索引速度快?

  • Redis中zsort底层的实现?

  • TCP三次握手的过程?要求详细介绍。

    需要了解的信息:

  • Mybatis创建连接的过程?

  • 反射机制?java如何实现动态代理?

  • HashMap底层原理?为什么采用红黑树而不是平衡二叉树?

    最主要的一点是:

    在CurrentHashMap中是加锁了的,实际上是读写锁,如果写冲突就会等待, 如果插入时间过长必然等待时间更长,而红黑树相对AVL树他的插入更快!

    (1)AVL以及红黑树是高度平衡的树数据结构。它们非常相似,真正的区别在于在任何添加/删除操作时完成的旋转操作次数。

    (2)两种实现都缩放为 O(lg N),其中N是叶子的数量,但实际上AVL树在查找密集型任务上更快:利用更好的平衡,树遍历平均更短。另一方面,插入和删除方面,AVL树速度较慢:需要更高的旋转次数才能在修改时正确地重新平衡数据结构。

  • 计算二叉树的最大高度?要求递归实现

    快手一面:判断一个整数是否是回文数字

    爱奇艺算法:快排、单例、菲波那切数列、全排列

    快手:中序遍历非递归算法

    百度:链表求和

    字节:树中的最大路径,从任意节点开始(或者是是否存在路径和等于一个整数n)

javalearing's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.