Java上的方法和类
我正在编写一个Java程序,其中包含一些类。我有一个类是Java上的方法和类,java,class,Java,Class,我正在编写一个Java程序,其中包含一些类。我有一个类是Rectangle.java,另一个类是Circle.java。在Rectangle.java上,我正在做一个比较矩形和圆形面积的方法。它被称为公共布尔比较(圆C) 当我在Principal.java上调用该方法时,我声明rectangler=new Rectangle(),Circle C=new Circle(),然后声明R.compare(C) 我的问题是,在public boolean compare(Circle C)中,我是否需
Rectangle.java
,另一个类是Circle.java
。在Rectangle.java
上,我正在做一个比较矩形和圆形面积的方法。它被称为公共布尔比较(圆C)
当我在Principal.java
上调用该方法时,我声明rectangler=new Rectangle()
,Circle C=new Circle()
,然后声明R.compare(C)
我的问题是,在
public boolean compare(Circle C)
中,我是否需要调用另一个时间rectangler=new Rectangle()
来比较R.areaRectangle()
与C.areaCircle()
,还是有其他方法来做这件事?因为您正在调用R.compare(C)
您不需要调用rectangler=new Rectangle()
insidecompare
函数。只需使用您已有的R引用(它是这个关键字)您似乎对java不熟悉,您只需要这个关键字
this.areaRectangle();
为了更好的实践,您应该创建一个接口“HasArea”,该接口可以同时具有方法compare和calculateArea
double calculateArea();
boolean compare(HasArea obj);
这两个类都应该实现这个接口及其方法,所以在矩形类中
class Rectangle implements HasArea{
@Override
public double calculateArea() {
//your logic for area calculation
}
@Override
public boolean compare(HasArea obj) {
//Compare your this.calulateArea() with obj.calulateArea();
}
}
你应该显示你的代码。显示你的代码(连续几行)。不,当你调用R.compare(C)
时,你应该将调用R
方法的R
矩形区域与C
圆形区域进行比较。要在compare
方法中调用areaRectangle
,只需使用this.areaRectangle()
甚至areaRectangle()
(this.
将由编译器隐式添加)。