题目: |
看代码,在心中模拟,选择正确的输出结果! |
备选答案: | A : UserName:周宇朝,UserAge:34 B : UserName:优快云,UserAge:10 C : UserName: 周宇朝,UserName:21 D : UserName:优快云,UserAge:34 |
你的回答: | B |
回答结果: | 错 |
答案: | D |
答案详解: | 这里传入的是引用,在复制的过程中,复制了指向调用者的对象的引用。 这里传入的其实是一个引用,在复制的过程中,复制了指向调用者的对象的引用,在调用SendUserDataByValue()方法与调用者指向同一个对象,所以可以改变状态数据,但是在调用的方法体内,重新实例化,却是不行的。Andrew Troelsen的书中写道:If a reference type is passed by value, the callee may change the values of the object’s state data but not the object it is referencing. 如果按值传递引用类型,被调用者可能改变对象的状态数据的值,但不能够改变所引用的对象。 |