今天在掘金看到一篇关于讲解的Spring框架的文章,文章提到了牛客网的面试题。于是乎我就下载了牛客网app,发现面试题目很丰富。我就挑了java方面的面试题做了一下。10个题目为一组面试题,做完后,我发现了自己错了好多,大多数都是基础题。俗话说:基础的深度决定未来的高度。我感觉自己必须要做一个错题的归纳和总结,把之前学习java过程中遗漏的知识点重新回顾一遍,正好借这一次机会。同时我也觉得理论知识也是非常重要的,理论左右着思想,支撑着代码的质量。
这里写图片描述 归纳:
这里写图片描述 归纳:
这里写图片描述 这个题目不仔细看很容易出错,以为很简单肯定是4。其实正确的答案是10,因为缺少break;不能跳出。 归纳:
这里写图片描述 归纳:
解答: 首先str0,str1是静态常量,存储在堆内存的永久代。str2也是新的一个对象,因为substring的源码中其实也是new一个String对象并且返回,str3和str4直接通过new运算符创建出的新对象。str2,str3,str4是存储在堆区的年轻代。经过Full GC后,年老代的内存被清理回收。不算永久代的话,只剩下年轻代。那么年轻代5*3=15个字符数
这里写图片描述 归纳:
这里写图片描述 归纳:
这里写图片描述 解答: dst=new String(src,"GBK").getBytes("UTF-8"); 归纳:
这里写图片描述 归纳:
这里写图片描述 归纳:
这里写图片描述 归纳:
坚持每天把一些遗漏的基础知识点温故而知新。