zoukankan      html  css  js  c++  java
  • 【java】值传递和引用传递---对象作为方法的参数传入属于哪种传递

    首先 这篇作为一个永久性的问题,欢迎大家讨论

    其次,个人结论如下几条:

      ①Java有且只有一种传递,即 值传递

      ②作为方法的参数传入,都是对原本的实参进行了copy

      ③只不过【实参】若是【基本数据类型】的话,就是对【实参】的【字面值】进行了copy

      ④如果【实参】是【引用数据类型】的话,就是对【实参】的【数值的引用地址值】进行了copy

    最后,解释一下题目的【对象作为方法的参数传入属于哪种传递】,

      1》根据上述第一条,确认是值传递

      2》解释上面第四条,同时解释为什么是值传递    

    对象【类】属于引用数据类型。一个对象有几个东西区分来,如上图。

    这样的话,对象传递给方法作为参数传入,实际是将对象中存储的【数值的引用地址】,也就是【对象的值】进行了copy

    所以,对象作为方法的参数传入属于值传递。

    解释很牵强,但是自我理解原理就是这样的。希望所有看到并有兴趣交流的朋友们留言,交流。

  • 相关阅读:
    [华为]字符串反转
    [华为]字符个数统计
    [华为]字符串分隔
    [华为]计算字符个数
    [华为]字符串最后一个单词的长度
    感悟-思考-生活
    [百度校招]打印全排列
    [阿里]逆序打印整数,要求递归实现
    [百度]数组中去掉连续重复的数字,只保留1个
    百度NLP三面
  • 原文地址:https://www.cnblogs.com/sxdcgaq8080/p/7093462.html
Copyright © 2011-2022 走看看