zoukankan      html  css  js  c++  java
  • java 基础:方法调用中的值传递是call by value,并且传递的是参数的值的拷贝,而不是引用

    public class TestExtends {
    public static void main(String[]args){
    int s = 10;
    System.out.println(System.identityHashCode(s));
    s=3*s;
    int num = 30;
    System.out.println(System.identityHashCode(s));
    System.out.println(System.identityHashCode(num));
    }

      

    输出

    460141958
    1163157884
    1163157884

      

    java-core  P121 

    java中参数传递给方法,总是按值调用call by value。

    在方法中,如果参数是对象,那操作的是对象的引用的拷贝。

    如果参数是值,操作的是值的拷贝

    public class TestExtends {
    public static void main(String[]args){
    A a =new A("bob");
    A b = new A("lucy");
    a.swap(a,b);
    System.out.println(a.getName()+" "+b.getName());
    A temp = new A("");
    temp=a;
    a=b;
    b=temp;
    System.out.println(a.getName()+" "+b.getName());
    int i =1;
    int j = 2;
    a.swap2(i,j);
    System.out.println(i+" "+j);
    }
    }
    class A{
    public int x=1;
    void swap(A a,A b){
    A temp = new A("---");
    temp=a;
    a=b;
    b=temp;
    }
    void swap2(int a ,int b){
    int c = 0;
    c=a;
    a=b;
    b=c;
    }
    private String name;
    public A(String name){
    this.name = name;
    }
    public String getName(){
    return name;
    }
    }

     

    bob lucy
    lucy bob
    1 2
    

      

     

  • 相关阅读:
    伟大的微软,太智能了
    ASP.NET MVC中的统一化自定义异常处理
    去除无用的文件查找路径
    关于easyUI的一些js方法
    easyUI小技巧-纯干货
    easyui tree tabs
    ueditor初始化
    多图联动
    饼图tooltip
    配色
  • 原文地址:https://www.cnblogs.com/zhizhiyin/p/11099253.html
Copyright © 2011-2022 走看看