当前位置:首页 > 开发 > 编程语言 > 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

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号