黑马程序员技术交流社区
标题:
大家有空吗?帮我看看这个代码,有个小插曲不明白
[打印本页]
作者:
小泉真也
时间:
2013-12-29 21:49
标题:
大家有空吗?帮我看看这个代码,有个小插曲不明白
鄙人不才,刚刚自学java十来天。问的问题可能有点低水准。
刚刚看到一个练习的代码,自己也做了一遍。
做完之后,我想试试 setX(5.0)之后,如何定义 使输出打印 改变X之后的 P坐标?
我试了几个,都没成。有点懵了。摸不着头脑了
有没有朋友指导一下我
class Point
{
//【定义一个点“Point”类,用来表示三位空间的点(三个坐标)】
/*
1、可以生成具有特定坐标的点对象
2、提供可以设置三个坐标的方法
3、提供可以计算该“点”距离远点的 平方的方法
*/
double x, y, z;
Point(double _x, double _y, double _z)//构造方法和类同名,没有返回值。
{
x = _x; y = _y; z = _z;
}
void setX(double _x)
{ x = _x;}
void setY(double _y)
{ y = _y;}
void setZ(double _z)
{ z = _z;}
double getDistance(Point p)
{
return (x - p.x) * (x - p.x) + (y - p.y) * (y - p.y) + (z - p.z) * (z - p.z);
}
}
public class TestPoint
{
public static void main(String[] args)
{
Point p = new Point(1.0, 2.0, 3.0);
Point p1 = new Point(0.0, 0.0, 0.0);
System.out.println(p.getDistance(p1));
p.setX(5.0);
// System.out.println( ??? ); 如何定义 输出打印改变X之后的 P坐标?
System.out.println(p.getDistance(new Point(1.0, 1.0, 1.0)));
}
}
作者:
欢欢
时间:
2013-12-30 09:57
本帖最后由 欢欢 于 2013-12-30 10:09 编辑
class Point
{
/*【定义一个点“Point”类,用来表示三位空间的点(三个坐标)】
1、可以生成具有特定坐标的点对象
2、提供可以设置三个坐标的方法
3、提供可以计算该“点”距离原点的 平方的方法
*/
double x, y, z;
Point(double _x, double _y, double _z)
{
x = _x;
y = _y;
z = _z;
}
void setX(double _x)
{
x = _x;
}
void setY(double _y)
{
y = _y;
}
void setZ(double _z)
{
z = _z;
}
double getDistance(Point p)
{
return (x - p.x) * (x - p.x) + (y - p.y) * (y - p.y) + (z - p.z) * (z - p.z);
}
}
class TestPoint
{
public static void main(String[] args)
{
Point p = new Point(1.0, 2.0, 3.0);
Point p1 = new Point(0.0, 0.0, 0.0);
System.out.println(p.getDistance(p1));
p.setX(5.0);
System.out.println("p点坐标: ("+p.x+" , "+p.y+" , "+p.z+")"); //这样打印P坐标。
System.out.println(p.getDistance(new Point(1.0, 1.0, 1.0)));
}
}
复制代码
作者:
浮出一个美
时间:
2013-12-30 10:14
类里面的成员变量最好是private的,提供一个getter方法即可
作者:
小泉真也
时间:
2013-12-30 12:49
谢谢楼上的各位热心解答。。
另外一个朋友给了我一个解决办法, 看起来也挺不错。
System.out.println(p.x + " " + p.y + " " + p.z);
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2