Java程序员面试宝典

1.jvm

 A.ClassLoader有层次关系

B.ClassLoader包括bootstrap classLoader(启动类加载器),ClassLoader在JVM运行时加载Java核心的API,其中包括用户定义的ClassLoader,这里所谓的用户定义是指通过Java程序实现的两个ClassLoader:

ExtClassLoader,作用:加载Java的扩展API,也就是/lib/ext中的类

AppClassLoader,加载用户机器CLASSPATH设置目录中的Class

D.不同的类加载器分别创建的同一个类的字节码数据属于完全不同的对象,没有任何关联

选C

 JVM内部统一使用Unicode表示,选B

2.i++

 解析:第一个x是局部变量。在方法结束后局部变量占用的内存被释放。

所以x,y初始化为0

最后结果为2

ps:static{}是静态代码块,且只执行一次

参考https://www.cnblogs.com/Heliner/p/10524699.html

 

 解析:Java用了中级间缓存变量机制,答案A

j=j++等价于

temp=j;j=j+1;j=temp;

参考https://www.cnblogs.com/lfeng1205/p/5779513.html

 解析:&&是短路运算符,即如果第一个值是false就不判断第二个了

因为!(a==b)是真,所以继续执行第二个。a和b的值是5和4

 

 i=i++ + ++i:对于i++,首先将i赋值为0然后自增,++i先自增为2再赋值,因此结果为2

 3.类型转换

 参考https://blog.csdn.net/u014179251/article/details/85998558

原文地址:https://www.cnblogs.com/-2016/p/12489951.html