JVM——JVM这五个面试问题你知道了吗?

1、如何理解基础数据类型和引用数据类型

引用中保存的是一个地址(引用本质上就是一个“低配指针”)
指针就是个变量,里面存了个整数,这个整数表示内存中的地址
引用本质上就是个低配指针,引用里也是存了个整数,含义也是内存中的地址.

地址就保存在内存中
在这里插入图片描述

2、如何理解引用和对象

在这里插入图片描述

3、如何理解局部变量、成员变量、静态变量

在这里插入图片描述
a)局部变量在栈上.
t本身就是在栈上
b)成员变量在堆上.
t2本身在堆上
c)静态变量在方法区.
t3本身在方法区
在这里插入图片描述

4、递归方法的执行过程

public class Test2 {
    //递归求阶乘

    public static void main(String[] args) {
        int ret = fun(5);
        System.out.println(ret);
    }
    private static int fun(int i) {
        if(i == 1){
            return 1;
        }else {
            return i*fun(i-1);
        }
    }
}

在这里插入图片描述
利用idea的调试器观察
在这里插入图片描述

5、static方法和普通方法之间的区别. .

普通方法中,有this. 和实例相关普通方法也叫实例方法.
static方法中没有this. 和类相关,和实例无关.静态方法也叫类方法
在这里插入图片描述

  • 9
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值