问:当我在IntelliJ中创建构造函数时,它会自动在成员变量前面添加“ this”。Craig的版本似乎没有做到这一点。“这”是什么意思,我是否应该更改是否将其添加到变量中?
答:从Java文档中:
在实例方法或构造函数中,this是对当前对象的引用,该对象是正在调用其方法或构造函数的对象。您可以使用,从实例方法或构造函数中引用当前对象的任何成员this。
通常,this会通过生成前缀为的成员变量来绕过m。这里有一些代码示例来说明这一点。
samplePoint_1.java
公共 类 Point {
public int x = 0 ; 公共INT ÿ = 0 ; //构造函数public Point (int a ,int b ){ x = a ; y = b ; } }
我们也可以这样做:
samplePoint_2.java
公共 类 Point {
public int x = 0 ; 公共INT ÿ = 0 ; //构造函数public Point (int x ,int y ){ this 。x = x ; 这个。y = y ; } }
使用m前缀来指定成员变量,您将具有:
prefixPoint.java
公共 类 Point {
public int mX = 0 ; public int mY = 0 ; //构造函数public Point (int x ,int y ){ mX = x ; mY = y ; } }
这些在功能上都是相同的。回发更多问题,我将深入研究IntelliJ,以显示您可以在何处进行更改以生成前缀。