在将不同类的方法应用于我正在编写的类时遇到问题。我尝试创建一个在三维球体中创建盒子的类。我已经为球体中的点设置了一个构造函数,该构造函数获取三个参数并创建一个点。这是构造函数:
public Point3D(double x, double y, double z)
{
_x = x;
_y = y;
_z = z;
}
public double getX()
{
return _x;
}
这是我正在尝试使用的当前类的方法
public Point3D getBase() {
return _base;
}
_base是Point3D对象。
public Point3D getUpRightBackPoint()
{
return new Point3D(getX(getBase(this)),getY(getBase(this)),getZ(getBase(this)));
}
现在getBase
是一个返回Point3D
对象的公共方法,而getX
是我分别编写的类Point3D
的一种方法,它返回双精度值。我不明白我在这里想念什么?错误显示“类Box3D中的方法getBase无法应用于给定类型” 。虽然这是我正在Box3D
对象上应用的方法。
答案 0 :(得分:1)
好吧,您定义的方法getBase()
不带任何参数,但是当您调用它时,将其指定为“ this”。如果要将this
与方法一起使用,请不要将其用作参数,而应将其用作拥有方法的对象:
this.getBase()
这不是必须的,只需getBase
也可以。如果要调用另一个对象的另一个getBase方法,请实例化相应的对象,然后使用它来调用该方法:
object bla = new Object();
bla.getBase(this);