A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 迷茫不堪的年纪 金牌黑马   /  2015-10-17 14:15  /  291 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

求补足
基本数据类型参数传递class Demo

public  staatic void  main(String [] args)
{
int x =6;
show();
System.out.print("x="+x)
}

public static void show(int x)
{
x=4;
}
输出结果:6

引用数据类型参数传递

class  Demo
{
  int x=6;         //赋值
public static void main(String[]args)
Demo d =new Demo();    //在Demo堆中开创新的地址内存 存储d.x =9
  d .x = 9;
show(d);    //调用下方的方法,  及为 d原本的 8
System.out.println(d.x);   //输出shou方法
}

public static void show(Demo d)    //定义show方法
{
d.x=8;      
  }
}
输出结果:8
//个人感觉俩者差别在于  int x 的定位位置 ,首先看是否在主函数之中,  还有show 方法的引用类型 ;

3 个回复

倒序浏览
不足之处几何多?
回复 使用道具 举报
都是值传递,只不过基本数据类型是值本身,引用类型是地址值
回复 使用道具 举报
C威 发表于 2015-10-19 21:33
都是值传递,只不过基本数据类型是值本身,引用类型是地址值

理解没有问题就是OK。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马