问答详情
源自:2-10 添加商品进购物车

addToCart函数中Cart对象的存在问题

if (request.getSession().getAttribute("cart") == null) {

Cart cart = new Cart();

request.getSession().setAttribute("cart", cart);

}

Cart cart = (Cart) request.getSession().getAttribute("cart");

if (cart.addGoodsInCart(item, Integer.parseInt(number)))

return true;

return false;

这段代码这个cart只是个局部变量对吧,这个对象出了函数之后就应该没有了才对啊,除了第一次调用这个函数之后后面都不会再调用request.getSession().setAttribute("cart", cart);为什么之后对这一对象的操作可以影响到session呢?难道request.getSession().getAttribute("cart") 返回的其实是个指针?

提问者:Teelfe 2016-12-05 00:37

个回答

  • 慕粉18419213644
    2016-12-06 09:15:02
    已采纳

    java所有关于对象的传递操作都是引用传递。