tsai
  • 按值调用(call by value)表示方法接收的是调用者提供的值
  • 按引用调用(call by reference)表示方法接收的是调用者提供的变量地址

  Java程序设计语言总是采用值调用。也就是说,方法得到的是所有参数值得一个拷贝,方法不能修改传递给它的任何参数变量的内容。

  方法参数有两种类型

    • 基本类型的参数,因为传进方法的是原数据的一个拷贝,所以方法不能修改一个基本数据类型的参数。
    • 引用类型的参数,传递的也是一个拷贝,但引用类型的拷贝只拷贝引用变量,指向的仍然是同一个对象,看图:

          

    • 所以方法可以改变引用类型参数的状态,但不能让引用类型的参数指向一个新对象,只能让拷贝的引用变量指向新的变量,看图:

                

总结:

    • Java程序设计中对象采用的不是引用调用,实际上,对象引用进行的是值传递。
    • 一个方法不能修改一个基本数据类型的参数;
    • 一个方法可以改变一个对象参数的状态;
    • 一个方法不能实现让一个对象参数引用一个新的对象(老师说这叫地址保护)。

分类:

技术点:

相关文章:

  • 2021-08-03
  • 2021-07-07
  • 2021-10-04
  • 2021-09-09
  • 2018-02-28
  • 2018-05-23
  • 2021-08-03
  • 2021-11-09
猜你喜欢
  • 2021-11-19
  • 2021-05-25
  • 2021-09-14
  • 2021-10-07
  • 2021-11-09
  • 2021-03-12
  • 2021-11-29
相关资源
相似解决方案