Java中方法的参数总是采用传值的方式。

下列方法欲实现对象的交换,但实际上是不能实现的。

public void swap(simpleClass a,simpleClass b){
simpleClass temp=a;
a=b;
b=a;
}

因为传入swap的参数实际是对象a和b的一个拷贝(假设为aa,bb)。

在方法中虽然交换了aa和bb,但方法结束后它们不再存在。

a和b仍然引用调用swap之前的对象。

-------------------------分割线 ------------------------------------

其实与c传指针是一个道理,

假设一个指针本身的地址为0xFFFFFF1A,指向的地址为(0x000001),

传入函数的是指针的值,即0x000001。

最新文章

  1. A web crawler design for data mining
  2. 【特别推荐】Node.js 入门教程和学习资源汇总
  3. SURF算法与源码分析、上
  4. 自定义tableViewCell
  5. PHP文件系统处理(二)
  6. ASP.NET操作Word的IIS权限配置
  7. "position:relative"在IE中的Bug
  8. Selenium WebDriver + Grid2 + RSpec之旅(二)----Grid2的配置
  9. Android入门——UI(2)
  10. ajax知识点总结
  11. Lua中使用状态机FSM简单例子
  12. SVM-sklearn
  13. 转:"为自动填充列调整大小期间不能执行此操作"解决办法 .
  14. git回退代码到某次commit
  15. input 原生上传文件(type = file)
  16. iserver-数据库型数据源导入后原dataset名称和数据库表名不一致的问题
  17. [C#.Net]KeyDown(KeyUp)和KeyPress的区别
  18. Java多线程之syncrhoized内置互斥锁的用法详解
  19. 2018.07.04 BZOJ1336&&1337: Balkan2002Alien最小圆覆盖
  20. 20155327 2016-2017-4 《Java程序设计》第6周学习总结

热门文章

  1. 【BZOJ-3143】游走 高斯消元 + 概率期望
  2. Fixing DSDT
  3. UP Board USB无线网卡一贴通
  4. oracle用户创建
  5. 利用Tomcat内置的servlet实现文件下载功能
  6. DateUtils 学习记录1
  7. JS提交对象数组到服务端的方法总结(C#实例)
  8. WinForm与WPF下跨线程调用控件
  9. FPGA优化之高扇出
  10. Hibernate之lazy延迟加载