当前位置:编程学习 > JAVA >>

java

public class Ref
{
  int i=9;
  public static void main(String argv[])
  {
    Ref r=new Ref();
    r.method(r);
  }
  
  public void amethod(Ref r)
  {
    multi(r);
    System.out.println;
  }
  
  publiv void multi(Ref r)
  {
    r.i=r.i*2;
  }
}
程序的运行过程和结果,谢谢。 --------------------编程问答-------------------- 你要干什么,输出r.i?
18吧
--------------------编程问答-------------------- 参数(Ref r)把我整晕了。 --------------------编程问答-------------------- 首先代码错了很多地方
其次你要打印的东西没有写清楚
我只能靠自己的理解给你想要的答案

main()->amethod()->multi()
结果i=18 --------------------编程问答-------------------- 这代码敲的,你懂得!



1.先在栈中开辟一个空间名字为r(指向Ref对象的引用),再在堆中初始化一个Ref对象,r指向它
2.调用该对象的method方法,在此方法中调用multi方法
  之后执行:System.out.println;(什么,没写全????)
最后方法结束,程序结束! --------------------编程问答-------------------- public class Ref
{
  int i=9;
  public static void main(String argv[])
  {
  Ref r=new Ref();
  r.method(r);
  }
   
  public void amethod(Ref r)
  {
  multi(r);
  System.out.println;
  }
   
  publiv void multi(Ref r)
  {
  r.i=r.i*2;
  }
}
 
--------------------编程问答-------------------- 你人真好,我看懂了,你理解的事我想问的,谢谢。 --------------------编程问答-------------------- 你想问r的值会不会变是吧 --------------------编程问答-------------------- 好几个地方有错误啊。。敲代码细心点 --------------------编程问答-------------------- 好像是18 --------------------编程问答-------------------- public class Ref
{
   int i=9;
   public static void main(String args[])
   {
   Ref r=new Ref();
   r.method(r);
   }
     
  public void method(Ref r)
   {
   multi(r);
   System.out.println(""+r.i);
   }
     
  public void multi(Ref r)
   {
   r.i=r.i*2;
   }
}
  
--------------------编程问答-------------------- 我想你不懂的是参数的传递的情况吧!
简单类型作为参数传递时,传的是值的拷贝,也就是不会改变原来参数的值,对象作为参数传递时,是传递的引用,你对该参数操作什么,会影响到传递的那个参数 --------------------编程问答-------------------- 不知道你哪里搞得代码,更不知道你想要知道什么东西。 --------------------编程问答-------------------- 其实我不懂的就是参数的传递情况,谢谢战友们了。
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,