第三章—练习_答案_内存解析

在这里插入图片描述

class Point1 {
	// 坐标有小数点,所以定义int不合适
	double x, y, z;

	Point1(double _x, double _y, double _z) {
		x = _x;
		y = _y;
		z = _z;
	}
	public void setX(double _x) {
		x = _x;
	}
	public void setY(double _y) {
		y = _y;
	}
	public void setZ(double _z) {
		z = _z;
	}
	// Point1 p : 传给我的点的坐标
	public double getDistance(Point1 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) {
		Point1 p = new Point1(1.0, 2.0, 3.0);
		// 原点
		Point1 p1 = new Point1(0.0, 0.0, 0.0);
		// 点p到 p1 点的距离的平方
		System.out.println(p.getDistance(p1));
		
		p.setX(5.0);
		// new 一个Point1对象然后把new出来的这个对象的引用直接传递进来,只不过没有名字
		System.out.println(p.getDistance(new Point1(1.0, 1.0, 1.0)));
		
		p.setY(5.0);
		// new 一个Point1对象然后把new出来的这个对象的引用直接传递进来,只不过没有名字
		System.out.println(p.getDistance(new Point1(1.0, 1.0, 1.0)));
		
		p.setZ(5.0);
		// new 一个Point1对象然后把new出来的这个对象的引用直接传递进来,只不过没有名字
		System.out.println(p.getDistance(new Point1(1.0, 1.0, 1.0)));
	}
}
发布了76 篇原创文章 · 获赞 1 · 访问量 7064

猜你喜欢

转载自blog.csdn.net/weixin_42814000/article/details/104752836