参数传递

参数传递
1、什么是参数传递
参数传递就像是一个物流公司一样,要将别人的东西运送到他需要的地方。而参数的传递
也是将你定义好的属性或对象传到你需要的地方,促使程序达到你所期望的目的。
2、参数(数据类型)的定义
在java中总体的分为两种数据类型:
1、基本数据类型(有八大基本数据类型):
byte型
int型
short型
long型
float型
boolean型
double型
char型
2、引用数据类型:
java定义好的一些类:String、image等
写程序时自己定义的一些类等
3、传参的方法
参数的传递方法在java中只有两个种参数传递的方法,第一是写一个构造方法进行传参;第二个就是写一个get/set方法进行传参。这就像是我们要外出旅游,我们可以选择坐汽车、坐火车或者是坐飞机等交通工具,这些交通工具将我们承载到我们需要到的地方。这些交通工具就像是java中的传参的方法。
4、参数传递的种类
值传递:
一些基本的数据类型与引用变量一般都是用的值传递的方式
引用传递:
一般都是用一些自定的名字来存放指向的数据的首地址
5、值传递的内存分析:
我们先定义一个int X=10的变量,在定义一个int X1的变量,先将xz中的值赋给x1(x1=x);
然后我们在将x1中重新赋一个值20(x1=20);这是我们再来看x的值是否发生变化。
内存分析图:

[img]http://dl2.iteye.com/upload/attachment/0100/7614/2d49936e-264b-3403-bfc5-28816bf473df.png[/img]

图 1 值传递图示
结论:x的值无变化,值传递的特性就是将本身的值赋给x1,因此x1的变化对于x来说没有任何影响。
6、引用传递的内存分析:
我们先定义一个类,类中的定义有属性、方法等;然后对于我们先定义好的一个类去new 两个对象 stu与stu1;再然后我们将stu赋值给stu1(stu=stu1);我们再改变stu中的某一个属性值;最后观察stu1的变化
引用传递的内存图:

[img]http://dl2.iteye.com/upload/attachment/0100/7612/be998c80-61ba-3541-8b8c-e26d7de768ba.png[/img]

图 2 引用传递
结论: stu1的输出属性是有变化的,引用传递的特性就是,没定义的对象名中存放的是指向堆空间的地址,因此stu=stu1的语句执行后,stu1与stu指向了同一个堆空间,所以此堆空间的值的改变是会引起两个对象名的改变。
7、String类的参数传递的分析:
String类是一个比较特殊的类,他只能算是半个值传递。
我们先定义两个String类型的数据str与str1 ,分别赋值(str=”abc”;str1=”123”);当我们将str赋值给str1(str1=str)之后,我们再改变str中的值,最后看str1的输出变化。
结论:只有str中的值变化,而str1中的值没有变化。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值