采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
您特地提了这里使用shop,由此提问。(7分40秒左右)
引用数据类型指向的不都是堆上实例(对象)?
那这里不可以只使用shop吗?
另外,还想请教一个低级问题,对象和实例可以画等号吗?
同学好,这个可以站在业务的角度上理解就好理解了,tempshop是我们取出的原先数据库里的数据,也就是未修改前的数据,这里我们编辑店铺的时候,如果图片被改动,那么我们需要删除原先的图片,所以这里我们先要获得原先图片的路径,这里为了方便,我们先获取原来店铺的信息,然后拿到原来图片的路径并删除原来的图片,之后再将新传进来的店铺信息更新到数据库中。如果我们用同一个shop,那么我们新传进来的信息就被原来取出来的值覆盖,那么原来的信息就没有改变,反而是原来的图片被删除了。同学可以好好理解一下这段逻辑:)
对象和实例的话是针对不同角度来描述的,这两个部分确实定义不是很清楚,有时候可以用来相互表示,严格来讲的话,对象是客观存在的,我们提取对象的部分特征,用程序语言描述出一个具有这些特征的结构体,称其为一个实例。
同学,我发表下我的看法, 这里的shop和tempshop 不是一个对象,所以目的不同。
传入的shop 里面是带有参数的,比如是带有图片地址的。
而我们需要通过这个shop的id来查询出以前的shop,即图中的tempshop,而这样才能查询到以前shop中图片的信息,然后把图片给删除掉。
然后再调用addShopImg 方法 添加现有的图片信息
你的观点是它们指向的不是堆上的同一个实例么? 我的观点是指向的是同一个对象,所以认为从一开始就直接传参为shop也可以。
tempshop 和 shop 很明显不是一个同一个对象啊。。。。
这样说 它们都是Shop类型的 实例, 但它们并不是同一个。 它们是Shop类型的两个实例
登录后可查看更多问答,登录/注册
SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需
2.0k 47
1.9k 41
2.6k 40
1.9k 39
1.6k 37