快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

Java中向方式传参数只有传值一种!

本文是个总结,欢迎讨论!

在Java中,参数的传递严格意义上讲都是传值的,只不过简朴很轻易分清晰。而对于对象,有些复杂。

首先,在Java中是先声明一个类的变量。然后,用类生成一个类的实例,也就是在内存中的类的实例区域,最后把这个区域的指针赋给类的这个变量。注重,变量中存的是指向对象的指针。

若是按传址传参数,是要改变这个对象变量所指的内存对象区域,也就是要在方式内把新对象赋给方式外的对象变量。但是,这在Java中办不到。因为Java是把对象变量中的对象指针传入方式,并没有把变量本身的地址传入方式;在方式中,会生成新变量接受这个对象的指针。所以,在Java方式中,可以改变当前对象中的内容,却不能改变方式外边变量的值,即所指向的对象。对于传值、传址的分析就是为了在应用中少犯错误。其他是次要的。

《此位置本有图片,因不能上传,故删除》

0: public class DemoTest {
1: public String x;
2: public void setX(String x){
3: this.x=x;
4: }
5: public void test(DemoTest ok){
6: ok=new DemoTest(); this.x="333";
7: }
8: public String getX(){
9: return this.x;
10: }
11: public static void main(String[] args) {
12: DemoTest ob = new DemoTest();
13: DemoTest obp = new DemoTest();
14: ob.setX("111");
15: System.out.println("ob.X"+ob.getX());
16: obp.test(ob);
17: System.out.println("ob.X"+ob.getX());
18: ob.test(ob);
19: System.out.println("ob.X"+ob.getX());
20: }
21: }

对于上面的程序,要分清晰对象变量和对象实体。

注重在上面的方式调用是一个可能引出错误的调用,不能说明传值和传址的区别。




返回类别: 教程
上一教程: 用java读写ini配置文件
下一教程: 漫谈Java程序的性能优化

您可以阅读与"Java中向方式传参数只有传值一种!"相关的教程:
· Java的参数传递的唯一方法:传值(By Value)
· java方式参数传值传引用的一点看法
· javascript向jsp传递参数的一种手段:使用xmlhttp对象
· Excel的java处理方法
· Java 按值传递参数
    微笑服务 优质保证 索取样品