1. Q:什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?
    A:

  2. Q:JDK和JRE的区别是什么?
    A:

  3. Q:Java:支持的数据类型有哪些?什么是自动拆箱装箱?
    A:

  4. Q:什么是编译器的常亮优化?
    A:
    Javase:面试题集

  5. switch语句:
    Javase:面试题集
    case的穿透性:在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运
    行,直到遇到break,或者整体switch结束

  6. 方法的重载:overload
    方法重载:指在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同即可,与修饰符和返回值类型无关。
    参数列表:个数不同,数据类型不同,顺序不同。
    重载方法调用:JVM通过方法的参数列表,调用不同的方法。

  7. Java的内存划分
    Javase:面试题集

方法区存储方法的信息,包括方法名,参数,返回值等。
方法运行时,将方法区的信息加载到栈内存中,在栈中为该方法开辟一块内存,即进栈。
堆中存储数组的数据,栈中存储的是变量,值为数组的地址。因此println时候,结果是地址。
Javase:面试题集
有两个独立数组的内存图
Javase:面试题集
两个引用指向同一个数组的内存图
Javase:面试题集
ArrayA和ArrayB数组名不同,但地址相同,故里面的值一直相同。
Javase:面试题集

相关文章: