参数传递

参数传递


由于要说到参数传递,首先要区分属性和参数(针对参数名和属性名相同的情况),能起到区分作用的是关键字this。
This 关键字
  用途:
  区分参数和属性,加this的是属性,注意输出时是要输出哪一个,有时候输出的是属性,有时候输出的是参数;
  在类中调用构造方法、普通方法和属性。
表示:当前调用方法的对象


值传递:适用于九种数据类型 byte,short,int,long,float,double,char,boolean,String
值传递的传递方式:传递内容的副本
引用传递
何引用:在程序执行到某一部分是可能会用到另外地方的值,这时候需要把这个值给拿过来用,但不是把这个值给换到要用的地方,这个过程称为引用
引用传递 (地址传递),c和C++里为指针传递,引用的时候用对象名表示,比如一个学生对象,名叫“张三”,当使用“张三”这个名字时,引用的就是这个学生对象,但这个学生对象实体和“张三”这个名字不是同一个东西,此时称“张三”这个名字引用了这个对象;

适用类型:对象类型(类类型、引用类型)和数组
  对象名里编存储的是对象在内存中的首地址
  
  字符赋值和构造函数初始化有不同
  例如 st1=“abc”,在内存里面是先给st1开辟一个存储空间,然后将abc这个字符串放在存储空间里面
  如 Studdent st1=new Student(“abc”);则是在池中(堆)开辟一个存储空间,把abc这个值放在里面,记录下这个地址,然后把这个地址指向st1,当调用st1时,就相当于是访问地址,根据这个地址把视线转到堆中,找到堆中存储的东西。

注意:如果是值传递方式,则传递后,两个参数间不再相互影响;如是

引用传递的方式,由于传递的是存储地址,两个参数存的是同一个地址,表示同一个位置,就相当于一个人有两个名字一样,如果改变地址,则两个参数都会改变。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值