最后,附一张自己面试前准备的脑图:
面试前一定少不了刷题,为了方便大家复习,我分享一波个人整理的面试大全宝典
- Java核心知识整理
- Spring全家桶(实战系列)
Step3:刷题
既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。
以下是我私藏的面试题库:
很多人感叹“学习无用”,实际上之所以产生无用论,是因为自己想要的与自己所学的匹配不上,这也就意味着自己学得远远不够。无论是学习还是工作,都应该有主动性,所以如果拥有大厂梦,那么就要自己努力去实现它。
最后祝愿各位身体健康,顺利拿到心仪的offer!
如果自己构建会出现什么问题?
首先我遇到的就是:
-
缺少com.sun.tools包
-
缺少sun.awt.UNIXToolkit 和 sun.font.FontConfigManager这两个类导致项目报错
这两个,第一个还好,第二个从网上找到这两个class自己手动放到项目对应的文件中,我找了好久找到了,还是报错,真实磨人,所以就放弃了自己构建。
解决思路:File => Project structure => Libraries 把jdk路径下的lib包添加到工程中,如下图:
缺少sun.awt.UNIXToolkit 和 sun.font.FontConfigManager这两个类导致项目报错
解决思路: 在src的目录下手动添加这两个类
阅读源码的时候,点击进入方法关联到了jdk的源码上自身的源码上
可以看到我看的是AQS类中的某个方法file is readonly
,然后发现直接点击进入了jdk的源码,而不是我自己构建的,而这个方法我是从我自己构建的JDK源码点击去的
这也太难了
参考的博文中也给出了答案,但是没有写完整。
解决思路: 排除掉src.zip文件,按下图操作即可。
首先声明按照楼主这么做是对的,我们验证一下
我直接全删掉了,然后添加我自己构建的JDK的SRC目录
如上图,操作完之后,按照之前点击进入AQS这个类,发现还是进入了JDK本身的源码中,我绝望了,也没有找到好的解决方式。
花了好久好久。。。。。。。
气的我砸键盘,后来发现砸键盘在这个类中居然能打字了,如下图,发现不是file is read only了,可以写了?
还是不懂,可能是我笨把
会不会是这个类指向这里,但是本身已经不是在这里了?(听不懂把,我也不会表达)
右键项目copy path,看到绝对路径并不是我说安装的jdk环境中的路径,而是自己构建的代码的路径,即使左侧显示的是在jdk的zip包下面。
所以在这里修改下,然后到我本身构建的JDK目录中查看是否被修改。
果然,在我刚刚构建的目录中修改成功了,我的设想是对的,而这其中修改了刚刚的sourcePath这个配置,那么我去看一次idea 官方文档怎么说?
地址:https://www.jetbrains.com/help/idea/2016.3/sdk.html
可能全翻译成中文不太好懂,containing the source code for the SDK binaries included in the classpath set.
,这里其中包含类路径集中包含的SDK二进制文件的源代码。
,类路径就是
就是这里,没错,我们java中的源代码大部分就在rt.jar中(题外话),classPath指向这里,但是里面的源代码通过上面的sourcePath已经类似于重定向 到了我自己制定的刚刚构建的位置了。
呜~
嗯,我想是这样的,虽然看起来挺别扭(看着是在jdk的zip中添加注释),不过真的解决问题了(被重定向了),虽然不是很完美,但是够用啦,哈哈哈哈哈哈
==================================================================
参考的几个楼主中还有其他的问题,虽然我目前没有debug,但是前几步和他们说的一模一样,所以顺便把他们遇到的问题也记录下来,以后会用到。
debug的时候,误点Alternative source availble for the class xxxx 的disable
解决思路: 打开setting => Debugger, 如下图 选中该选项。
编译过程中报java:OutOfMemory,提示系统资源不足
编译过程中报java:OutOfMemory,提示系统资源不足(https://blog.csdn.net/ljj821061514/article/details/52371037)
我的原来默认设置的是700,改成1000就没问题了
要让代码运行时自动关联到当前项目src目录下的代码(这个跟我说的那个问题一样)
要让代码运行时自动关联到当前项目src目录下的代码(为了不影响平时使用jdk的源码,我创建了一个1.8study,唯一的差别就是把原来的src.zip换成了jdk1.8-sources-study的src目录)(https://blog.csdn.net/u011837804/article/details/80450809)
原文链接:https://blog.csdn.net/u010999809/article/details/101922489
====================================================================================
这种方式有点累,不太推荐,倒不如去github上找优秀的,在巨人肩膀上前行。
这种方式来自:https://blog.csdn.net/qq_42191317/article/details/102772497
在项目开发中,查看jdk源码时是只允许读,无法修改或者加注释的。为了方便学习JDK源码,我们首先需要搭建环境,可以对JDK源码进行修改,添加注释等操作。
最后
我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。
还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。
…(img-0rkrlblF-1715072809715)]