编写实例方法

时间:2014-03-21 06:46:54

标签: java instance-methods

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

我在网上关注了一个教程,并提出了以下代码。但是当我编译时,它会不断添加" 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;
}

1 个答案:

答案 0 :(得分:0)

无论何时调用对象的任何内部字段或方法,都会暗示关键字this,即使未明确存在,也指示对象本身。

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

因此,this.i仅表示i对象"中的"变量this。当然,i必须在调用this.i.isZero()之类的任何方法之前为其分配值,否则将发生运行时错误(NullPointerException)。 IDE也可以警告这样的错误(例如,Eclipse用黄色的锯齿线突出显示有问题的命令。)

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

启用此功能
  • 窗口 - >偏好 - > Java - >代码风格 - >使用'
  • 对所有生成的字段访问进行限定