在Circle类中也写一个GetX方法,在方法里面写return o.GetX();即可。
多说一句,你Circle构造函数有问题,照你的写法,坐标点永远都是(0.0,0.0)
Circle(Point p,double r)
{
o = new Point(0.0,0.0);
radius = r;
}你这个构造有什么意义呢,穿进去的参数用不着,又重新new了一个!
public class test{
Circle c = new Circle (new Point(1.3,2.5),5);
System.out.println(c.GetX());
这是干嘛,?你要写主函数吧
public static void main(String[] args) {
Circle c = new Circle(new Point(4,5),5);
double d = c.o.GetX();
System.out.println(d);
}
对象.对象属性.属性一获得x值!
class Point{
double x;
double y;
Point (double _x,double _y)
{
x=_x;
y=_y;
}
double GetX ()
{
return x;
}
}
class Circle{
Point o;
double radius;
Circle(Point p,double r)
{
o = new Point(0.0,0.0);
radius = r;
}
double Aero(double r)
{
double aero;
return aero = 3.14*r*r;
}
}
public class test{
public static void main(String args[]) {
Circle c = new Circle (new Point(1.3,2.5),5);
System.out.println(c.o.GetX());
}
}
你试试吧,本人测试通过的,你没有main 当然不会输出,还有你调的c的GetX,他里面都没有这个方法。希望对你有帮助!
前面的代码先不说,说最后一句代码:
System.out.println(c.GetX());
请问c对象里面有X属性?应该是c.o.Getx()吧....
首GetX()不是c的方法,是c.o的方法,所以 你要输出的话 就是 System.out.println(c.o.GetX());
你的GetX()是Point类的方法你怎么用Circle的对象调用呀