当前位置: 首页 > news >正文

知名seo网站优化公司有关天猫网站建设的论文

知名seo网站优化公司,有关天猫网站建设的论文,对网站建设更新情况的通报,公司注册网站的费用多少🎉 前言 之前一直以为Java传对象是引用传递,直到最近用Java写数据结构链表时遇到一些问题,这才让我重新思考这个问题,经过我的一番研究,发现不能一棒子打死,其实这其中既有值传递,又有引用传递…

🎉 前言

之前一直以为Java传对象是引用传递,直到最近用Java写数据结构链表时遇到一些问题,这才让我重新思考这个问题,经过我的一番研究,发现不能一棒子打死,其实这其中既有值传递,又有引用传递,让我们往下看。

🎉 引用传递的情况

之前一直认为是引用传递,是因为我的使用场景大多数是修改对象的属性,就像下面这段代码:

class LinkNode{int val;LinkNode next;LinkNode(){}LinkNode(int val,LinkNode next){this.val = val;this.next = next;}
}class Main{public static void main(String[] args) {LinkNode L = new LinkNode(666,null);System.out.println("传参之前,L.val="+L.val);Fun(L);System.out.println("传参之后,L.val="+L.val);}static void Fun(LinkNode L){L.val = 999;}
}

在这里插入图片描述
像这样在一个函数的参数列表中传入一个对象,并且在函数内部修改传入对象的属性,会发现在函数外部的对象属性也发生了变化,这就是典型的引用传递。

🎉 值传递的情况

class LinkNode{int val;LinkNode next;LinkNode(){}LinkNode(int val,LinkNode next){this.val = val;this.next = next;}
}class Main{public static void main(String[] args) {LinkNode L = new LinkNode(666,null);System.out.println("传参之前,L.val="+L.val);Fun(L);System.out.println("传参之后,L.val="+L.val);/* 新增代码 */Fun2(L);System.out.println("传参之后,L.val="+L.val);}static void Fun(LinkNode L){L.val = 999;}/* 新增代码 */static void Fun2(LinkNode L){LinkNode l = new LinkNode(111,null);L = l;}
}

这段代码在原先代码的基础上,增添了Fun2()函数,代码中也注释了新增的部分,此时如果我们沿用之前的观点,认为传对象是引用传递,那么在 Fun2(L) 函数内部,L = l;这条语句将对象L的引用更改了,那么在函数外部的L的引用应该也要更改,那么此时打印 L.val应该是111才对,但是实际运行结果如图:
在这里插入图片描述
可见引用的修改只在函数内部成立,在外部不成立,要想修改函数外部L的引用,必须在函数内部手动返回L,并将其赋值给函数外的L,着不就是妥妥的值传递吗?

🎉 解释

先说结论,传对象就是“值传递”。

其实要解释“引用传递“的假象也很简单,我们传入对象实际上传的是对象的引用的副本,也就是值传递,但是这个副本和原对象指向的同一个内存空间,因此,借助副本修改对象的属性和使用原对象修改对象的属性是完全等效的,因为操作的是同一个内存空间。

但是如果我们在函数内部直接对对象的副本进行赋值,就不会影响原对象,因为二者的内存空间不是同一个。

由此可见,对象虽然是引用数据类型,但是传入函数中依然是值传递,因此我们要明确在函数内部操作的内存空间和函数外对应的内存空间是不是一致的,只有一致的情况下,在函数内的修改才会影响函数外,否则不影响。

http://www.yayakq.cn/news/759320/

相关文章:

  • 个人备案挂企业网站天河区门户网站教育局
  • 西安专业做网站建天站网站建设
  • 营销型网站举例购物网站开发需求
  • 宁波网站设计制作公司html5 图片展示网站
  • 新手php网站建设如何在百度搜到自己的网站
  • 一级做A网站为什么网站突然打不开
  • 学校网站php源码怎么使用网站模板
  • 建设物流网站的规划东丰网站建设
  • 网站建设中 英文帝国cms 关闭网站
  • 云南省城乡建设厅网站怎样做境外电商
  • 懒人图库网站源码有没有做网站的电话
  • C语言做网站需要创建窗口吗上海网站建设 公司案例
  • 网站建设 客户拜访开源商用的商城项目
  • 深圳品牌网站建设公司seo与网站建设
  • 做网站开发需要的笔记本配置深圳市住建局招标中心
  • 商丘网站建设公司企业注册成立网址
  • 如何制作一个动态的网站的登录详细步骤页面高端网站设计怎么样
  • 北京市建设工程造价管理处 网站工商注册查询平台
  • 如何免费自己做个网站广州市医院网站建设
  • 电商网站h5模板下载企业网站的基本内容和营销功能
  • wordpress 免费电商主题南宁公司做seo
  • 炫酷手机网站模板网站被黑 百度跳转
  • 博罗县建设局网站合肥知名网站制作公司
  • 全响应式网站用什么做的男的做直播哪个网站
  • 网站建设与维护A卷答案如何给wordpress添加一张网站背景
  • 企业网站seo优化怎么做宁波租房网
  • 做网站公司深玉山电商网站建设
  • 学校精品课网站怎么做网站建设管理属于职业资格吗
  • 爱建站小程序特点温州网站建设培训班
  • 惠州市住房和城乡规划建设局网站快照推广