-3

根据这个关于 SO Python 的高度投票的答案,它强制self在实例方法中声明,因为语言设计者希望防止像在 Java 中那样通过this.

“可以用 Java 推导出来”是什么意思this

4

2 回答 2

3

如果您在 Java 中引用一个没有限定符的标识符(例如,something),编译器将检查是否存在具有该名称的局部变量,如果没有,将推断它必须是一个字段。

于 2013-03-10T16:29:54.207 回答
2

我相信原始帖子意味着在某些情况下 Java 需要使用“this”来明确您所指的变量。例如:

public class A {

    private String b;
    private String c;

    public void setB(String b) {
        this.b = b; // <-- this removes confusion for Java
    }

    public void setC(String _c) {
        c = _c; // <-- this is not needed here
    }

}
于 2013-03-10T16:31:10.753 回答