本文作者:刚哥,收录至Java面试笔试专栏

都说程序员的总结总是言简意赅的,我之前是半信半疑,但年会上程序员的总结PPT确实闪瞎了我的眼睛,平均5分钟讲完一年的工作,最短的只需要3分钟,同志们,只有三分钟。

我们就是那种做了很多事情,但是并没有在关键时刻呈现工作量的孩子们,结果就是年底考评一般般,年终奖自然少的可怜。你们的年度总结啥样的?年底有奖金么?开工有开工利是么?欢迎留言和我互动。

后续我觉得除了跟大家探讨技术问题,还需要跟大家沟通如何更好地跟人沟通问题,希望能帮助大家提升沟通交流能力。

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 get resttemplate 请求传递数组_Java面试中遇到的坑【4】相关推荐

  1. java get resttemplate 请求传递数组_RestTemplate入门

    RestTemplate入门  本篇主要讲解RestTemplate的基本使用,它是Spring提供的用来访问Rest服务的客户端,RestTmplate提供了很多便捷的方法,可以大大提供开发效率,本 ...

  2. Java面试没过_Java面试中遇到的坑【填坑篇】

    1.StringBuilder替代String拼接,面试中经常会问到 String,StringBuilder,StringBuffer的区别. 解答:String类作为java语言中最常见的字符串类 ...

  3. 使用ajax发送数组请求,Ajax请求传递数组参数

    var ids = []; var rows=$("#tt").datagrid("getSelections"); for(var i=0; i ids.pu ...

  4. java向应用程序传递参数_Java应用程序中的消息传递主体

    java向应用程序传递参数 消息传递是每个Java应用程序的关键方面,尤其是对于涉及企业应用程序集成(EAI)或关注点分离的应用程序,例如多层WEB应用程序. 消息传递可以分为两个主要类别,即同步和异 ...

  5. java cpu利用率上不去_Java 面试突击之 Java 并发知识基础 amp; 进阶考点全解析

    版权说明:本文转自知乎用户木子超,已获其许可,附上其文章主页链接 知乎用户 一.基础 什么是线程和进程? 何为进程? 进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的.系统运行一个 ...

  6. axios get请求 传递数组

    文章参考 get请求如何传递数组参数 GET请求如何传递数组参数 问题描述 当我们需要通过get方式传递一个数组作为参数 tag:[1,2,3,4] 预期是解析为: https://www.cnblo ...

  7. java面试 设计模式_Java面试中常问到的设计模式

    面试中常问到的设计模式 什么是设计模式? ​设计模式是世界上各种各样程序员用来解决特定设计问题的尝试和测试的方法.设计模式是代码可用性的延伸 单例模式 ​保证被创建一次,节省系统开销 ​饿汉式:上来不 ...

  8. java方法带参数返回值_Java方法中的参数太多,第6部分:方法返回

    java方法带参数返回值 在当前的系列文章中,我正在致力于减少调用Java方法和构造函数所需的参数数量,到目前为止,我一直专注于直接影响参数本身的方法( 自定义类型 , 参数对象 , 构建器模式 , ...

  9. java什么是反射 代码说明_java编程中,常提到的反射代码指的是什么?

    展开全部 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态e5a48de588b662616964757a686964616f31333335326232或行 ...

  10. java组合与继承始示例_Java示例中的组合

    java组合与继承始示例 Composition in java is the design technique to implement has-a relationship in classes. ...

最新文章

  1. java基础--相等
  2. 数字对 (长乐一中模拟赛day2T2)
  3. 有哪些通俗易懂的例子可以解释 IaaS、PaaS、SaaS 的区别?
  4. 数据结构实验之二叉树五:层序遍历(STL和模拟队列两种方法)
  5. 思考,思考,不停思考——《技术领导之路》序言
  6. cookie、session、cache-control等
  7. Java学习资料汇总
  8. 手机app测试用例怎么写?手机app测试点有哪些?
  9. jquery prop(“outerHTML“) 获取当前标签和标签内部的html 代码
  10. aht10温湿度传感器特点及使用介绍
  11. GIS真正的魅力在哪?
  12. Microsoft Office SharePoint Server 2007案例实战开发
  13. 相关系数与相关指数区别
  14. BDE(一款数据库引擎,通过它可以连接不同数据库)
  15. mysql报08S01的错误- SQL Error: 0, SQLState: 08S01 偶发
  16. 微信小程序超过屏幕高度后显示底部图标
  17. 哈希(哈希表的应用)
  18. (二)Execute
  19. yandex浏览器_您可以在10分钟内创建自己的任务管理器:Yandex的实践
  20. 影像科dsa为什么必须买维修保险_为什么大家对影像科了解得那么少呢?

热门文章

  1. Java静态变量小感
  2. redis 8种淘汰策略
  3. Spring Aop中@Pointcut用法
  4. bzoj2530 [POI2011]Party
  5. 萌新如何写出一篇优质观点类新媒体文章?
  6. PHP+Apache+MySQL+phpMyAdmin在win7系统下的环境配置
  7. 孙鑫VC++讲座笔记(一)
  8. Androd UI学习之ImageSwitcher
  9. sonarqube如何导入规则_webpack如何使用Vue
  10. Linux 的 history 命令显示时间