0

我正在练习编写一个将自然数转换为整数的实例方法。

我在网上关注一个教程,并想出了下面的代码。但是,当我编译时,它会不断添加“ this”代码编译并给我预期的输出,但我收到了一些警告消息。this.i创建实例方法时“ ”是正确的语法吗?

private NaturalNumber i;

public int toInt() {
    int result = 0;
    if (!(this.i.isZero())) {
        int d = this.i.divideBy10();
        result = this.i.toInt() * 10 + d;
        this.i.multiplyBy10(d);
    }
    return result;
}
4

1 回答 1

0

每当您调用对象的任何内部字段或方法时,关键字this(即使没有显式存在)也是隐含的,指的是对象本身。

可以在 Java 文档中找到更多详细信息,例如Oracle

因此,仅表示“对象中的this.i变量”。当然,在调用它的任何方法(如 )之前,必须为其分配一个值,否则会发生运行时错误()。IDE 还可以针对此类错误发出警告(例如,用锯齿状的黄线在有问题的命令下划线)。ithisithis.i.isZero()NullPointerExceptionEclipse

Java如果在首选项中指定, IDE 可以自动添加this关键字。例如,在 中Eclipse,您可以从

  • 窗口 -> 首选项 -> Java -> 代码样式 -> 使用 'this' 限定所有生成的字段访问
于 2014-03-21T07:18:25.760 回答