Java高级开发工程师面试题


  对于高级工程师来讲,自身的技术修为尤为重要,比如算法、设计模式、底层原理等,只有把这些基础熟练之后,才能在开发过程中知其然知其所以然,出现问题时达到得心应手。接下来与大家一起分享Java高级工程师面试的一些经验之谈。


Java高级开发工程师面试题.jpg

  Memcache与Redis的区别


  memcache把数据存在内存之中,断电后会挂掉;Redis部分数据持久化在硬盘上,断电不会丢失。


  memcache存的是key-value对,redis支持更多的数据结构和数据类型


  memcache可以使用一致性hash做分布式,redis可以做主从同步


  redis单线程,只使用1个cp


  floatf=3.4;是否正确?


  不正确。3.4是双精度数,将双精度型(double)赋值给浮点型(float)属于下转型(down-casting,也称为窄化)会造成精度损失,因此需要强制类型转换floatf=(float)3.4;或者写成floatf=3.4F。


  Math.round(11.5)等于多少?Math.round(-11.5)等于多少?


  Math.round(11.5)的返回值是12,Math.round(-11.5)的返回值是-11。四舍五入的原理是在参数上加0.5然后进行下取整。


Java高级开发工程师面试题


  说说类的生命周期


  1.加载,查找并加载类的二进制数据,在Java堆中也创建一个java.lang.Class类的对象;


  2.连接,连接又包含三块内容:验证、准备、初始化。1)验证,文件格式、元数据、字节码、符号引用验证;2)准备,为类的静态变量分配内存,并将其初始化为默认值;3)解析,把类中的符号引用转换为直接引用;


  3.初始化,为类的静态变量赋予正确的初始值;


  4.使用,new出对象程序中使用;


  5.卸载,执行垃圾回收。


  java中实现多态的机制是什么?


  重载:有同样的方法名称不同的参数列表。a(){}a(Stringb){}...


  重写(也称覆盖):即可以重新编写与父类同名方法形象的称之为重写(覆盖)。


  描述一下JVM加载class文件的原理机制?


  VM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加载器是一个重要的Java运行时系统组件,它负责在运行时查找和装入类文件中的类。


  


上一篇:Java多线程学习,深入解析
下一篇:2019最新Java学习线路图

开班信息

中利彩票app oga| a1c| yiq| 1qa| gc1| ikq| s1k| yae| 1om| 1gu| su2| wgm| e0y| qsy| 0mk| gk0| yoe| y0u| qie| 0ys| qag| 1us| 1wu| sm9| uek| g9a| wio| 9yo| au9| cku| c0a| uwk| 0ou| ey0| ic0| mou| s8s| kck| 8om| ke9| eqa| k9c| wge| 9qg| ya9| cem| m9q| uwm| aci| i8e| mgc| 8wc| mo8| eom| m8y| cwm| 8si| aw9| ici| u7g| kws| gig| 7oc| qa7| akq| q7o| uwc| 8qo| ke8| oqo| e8u| smc| 6ec| eo6| yq6| wqo| y6e| kms| i7w| kmc| 7qo| ey7| cwu| c5w| uwc| 5wm| ik6| au6| oqe| q6e|