当前位置:首页 > 开发 > 编程语言 > Java > 正文

java对象函数参数传递

发表于: 2014-10-19   作者:麦田的设计者   来源:转载   浏览:
摘要: class PassParm { public static void main(String args[]){ int x=5; change(x); System.out.println("x="+x); } public s
 class PassParm
{
        
         public static void main(String args[]){
             int x=5;
        change(x);
            System.out.println("x="+x);
            }
   public static void change(int x){
            int x=3;

             }
 }

 输出x=5;主调函数没有变化x=5;

 class PassParm
{
          int x;
         public static void main(String args[]){
           
     PassParam obj=new Passparam();
      obj.x=5;
     change(obj);
System.out.println(“x=”+x);
            }
   public static void change(PassParam obj){
             obj.x =3;

             }
 }

 输出x=3,两个栈内存指向了一个堆内存。change方法修改了堆内存x的值,而main方法里面所指向堆内存的地址始终不变。

如果change方法变为: public static void change(PassParam obj){

obj=new PassParam            
 obj.x =3;

             }

则会输出x=5(类似于1)

注:传递对象的方式和传递数组的方式一样。

java对象函数参数传递

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
我们知道在.net里class是引用类型,在函数参数表中的对象传递的都是对象的引用,所以在函数体内对其
我们知道在.net里class是引用类型,在函数参数表中的对象传递的都是对象的引用,所以在函数体内对其
先看一下Java中变量和对象之间的区别和联系吧 如果参数的类型是基本类型,则按值传递。 如果传递的
本文选自《专业嵌入式软件开发——全面走向高质高效编程(含DVD光盘1张)》一书 《专业嵌入式软件开发
近段时间,有几个刚刚开始学习C#语言的爱好者问我:C#中的函数,其参数的传递,按值传递和按引用传
上机内容:体会参数运用中储存空间的变化 上机目的:具体掌握参数传递 /* * 程序的版权和版本声明部
C# - 函数参数的传递 原地址:http://www.cnblogs.com/DonLiang/archive/2008/02/16/1070717.html
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserve
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserve
Java参数的传递到底是以什么方式进行的,这个问题比较让我困扰。 有人说Java只有按值传递,但这种解
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号