http://expert.csdn.net/Expert/topic/1359/1359381.xml?temp=.14349

解决方案 »

  1.   

    class Position{
       public int a=1;
       public int b=5;
    }.....static void operate(Position p){
       p.a++; p.b++;
    }....public static void main(String[] args){
      Position p=new Position();
      operate(p);
      System.out.pritln("a="+p.a+",b="+p.b);
    }在java中, 对象,即用new 来产生的东西(也包括数组,new int[10])是用引用的方法,所有基本类型(int, long, double, boolean, char, byte .....)是传值,不过他们也有向对应的封装类,在java.lang中
    (Integer, Boolean, Character....).
      

  2.   

    java中没有指针这一概念,但是你可以把
    Position p=new Position();中的p和其他用new 产生的东西想象成一个受到限制的指针,我们无法对其进行++,+=之类的操作
    但是java.lang.String是一个例外,它可以用+,+=两个符号
      

  3.   

    在java中普通的参变量是传值的,而对象型的参变量为引用的!!