千家信息网

java面试中的坑有哪些

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本篇内容介绍了"java面试中的坑有哪些"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!NO1.大家看
千家信息网最后更新 2025年02月03日java面试中的坑有哪些

本篇内容介绍了"java面试中的坑有哪些"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

NO1.大家看看这道题输出应该是啥?是否是三个5呢?

解答:结果是输出5,5,5.这个题考察面试者是否了解类加载机制在处理类内部类时的处理方式,虚拟机当加载静态内部类时如果是确定的属性值时,虚拟机会直接将值存放到元存储中(静态方法区),其他未确定值需要在运行时动态计算,由虚拟机分配地址和值。如果设置的值不是static,那么不能直接访问,因为此时值属于对象而不是类。

NO2.看看这道题的输出结果是多少?是100还是99?期待大家参与,下期给出答案。

解答:看了大家的回复结果,有几位小伙伴回答是正确的,输出结果是0.因为赋值运算在自增运算之前已经完成了。 在这里JVM里面有两个存储区,一个是暂存区(以下称为堆栈),另一个是变量区。j=j++是先将j的值0存入堆栈中,然后对变量区中j自加1,这时j的值确实是1,但随后将堆栈中的值赋给变量区的j,所以最后j=0; 而j=++j,是先对变量区中的j加1,再将变量区中的j值(1)存入堆栈,最后将堆栈中的值赋给自变量区的j,所以j=1;

NO3.考察一下你对数组和列表转换的问题,下面的结果输出几呢?

解答:这道题答案是1,你的答案对不对呢?此题考察基本类型数组和引用类型数组,基本数据类型数组在转换为列表时,如果直接传递数组,基本类型数组将被视为一个对象而不会被解析成数组,如果直接传递参数将能正常解析。希望大家看题看仔细。

NO4.此题考察大家对集合的equals的理解,下面程序输出什么?

解答:此题答案输出true.是不是很意外!我也觉得意外呢,两个不同的类型竟然相同,简直是颠覆了我的知识观,其实两个类型都重写了equals方法,比较了内容和元素长度,并未对类型进行首要比对。大家看到两个类型的equals方法就明白为啥相等了。

NO5.switch 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String上?

解答:此题主要考察我们是否关注JDK每个升级版本带来的变化,结果是支持byte,1.7(含)以后支持string,但是很遗憾不支持long。

NO6.至少说出三种如何取得从 1970 年 1 月 1 日 0 时 0 分 0 秒到现在的毫秒数?

此题据说难倒了很多工作4年以上的码农!好害怕。坦白说我自己也就知道下面一种,虽然我也是工作了很多年的老鸟....... 面试者:System.currentTimeMillis()。
面试官:亲友团来把答案补上来,这个就是[优必选]面试的一道题,想去智能机器人的看准了。

解答:

  1. System.currentTimeMillis()。

  2. new Date().getTime() 。

  3. Calendar.getInstance().getTimeInMillis()。

NO7.面试官:请说出三种获取java类字节码的方法?

面试者:Class.class,object.getClass(),除此之外没有了吧?! 面试官:你可以想想JDBC知识,也许会帮你想起来。 面试者:没有了......

解答:其实还有一种是通过反射来实现,如图所示

NO8.对JVM也有一些了解了,能简单说下堆(heap)和栈(stack)的区别么?

解答:考察面试者对JVM中两个重要的存储单元的理解,因为篇幅有限,我就不一一描述, 大家可以很简单搜索到答案的。这个地方一般面试官还会问到常量存到哪里,对象存储哪里,类属性存哪里等等。 可以看这篇文章:

https://blog.csdn.net/jasonwang18/article/details/70578647。

NO9. 我看你后端技术还可以,了解前端么?能跟我聊聊HTTP/1.1 与 HTTP/1.0 的区别?

解答:如图所示

NO10.恩,回答的还不错。讲一下大家都听过但不一定能讲的明白的POST方法和GET方法区别?

面试者:

  • POST将请求参数隐藏进行传递,而GET会将参数拼接到请求地址后面传递;

  • POST相对比较安全而GET因为暴露参数容易被篡改;

  • 根据HTTP传输协议两者对参数长度有不同的要求;

面试官:可以再多说一些,点基本讲到了。

解答:其实回答的点基本是回答到了,其实两者在与服务端发生交互时有所不同,POST方法会请求服务端两次,第一次先发送头部进行确认,服务端返回成功后再次发送数据,而GET只需要请求服务端一次。同时强调一下GET方法中http协议并未做参数长度限制,只是不同浏览器和服务端做了限制而已。

"java面试中的坑有哪些"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

解答 方法 类型 输出 数组 参数 答案 结果 两个 变量 堆栈 服务 不同 知识 存储 作用 内容 对象 长度 支持 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 西峰公积金管理部网络安全 上饶稳定服务器要多少钱 数据库如何修改变量名 天津百信网络技术有限公司 武汉电子健康卡app服务器坏了吗 延庆区一站式网络技术推广好处 有锁机怎清除数据库 青海高速网络安全宣传 灵寿品牌软件开发设计专业服务 手机服务器定位在哪设置 电信网络技术工程师面试问题 重庆软件开发定制加盟报价 数据库用户建在哪里 自己域名绑定别人服务器 服务器安全狗防护厦门 阿里云服务器给的外网ip 敏实集团软件开发怎么样 暗黑三服务器设置额外代码 只有自己玩的服务器连不上 好的access数据库软件 辽宁服务器机柜生产厂家云主机 软件开发公司架构体系 vs数据库管理 金融办网络安全保障工作总结 宁河软件开发哪个好 王者荣耀新服务器好处 有没有服务器显卡 校园网络安全维护措施 国产power服务器 团飞科技与伯堂互联网服务平台
0