java 一个代码规范的问题-1

以下是一个方法的实现的两种写法

public Object get(String key){
        Object object = redisTemplate.opsForValue().get(key);
        return object;
}
public Object get(String key){
    return redisTemplate.opsForValue().get(key);
}

问题:
1、假如不需要对key做额外处理,而是直接执行对应方法然后直接返回,是否第二种写法更好?因为不需要 创建object这个对象出来,节约了开销?

阅读 1.1k
1 个回答

第二种写法的好处是不经过虚拟机栈做中转,将堆对象的引用直接返回给调用者。
纠正你问题中的问题:“创建object这个对象出来,节约了开销?”,object是等号后面对象的引用,是在虚拟机栈中存放的地址。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题