我知道这个问题有一个明显的答案可能看起来有点微不足道,但我找不到任何解释,也找不到 StackOverflow 或谷歌。
以下代码:
Object o = this;
它可以在需要操作(比如说用for循环)对象的类方法(属于通用类的实例方法,而不是静态方法)中使用吗?在每次迭代期间更新其引用?
MyObject[] oArr
同样,假设我们有一个数组并且otherMethod
可用于 MyObject ,请考虑以下代码:
MyObject obj = this;
for(MyObject f : oArr){
obj = obj.otherMethod(f);
}
这里发生的是:
- this 用于分配对
obj
执行该方法的当前对象的引用 - 一旦分配了引用,我们终于可以在每次迭代期间更新对象 o 的引用
老实说,让我感到困惑的是这行代码:
MyObject obj = this;
这是我第一次发现this
没有变量/方法名称,用于简单地引用一个对象。
我做对了吗?这里发生了什么?我错过了什么吗?你有一个链接,我可以在其中找到有关类似用途的其他信息this
吗?
谢谢