求高手用JAVA帮我设计一个完整的Point类,可以计算两点之间距离和中间点坐标的,万分感谢?
你好,程序如下:
public class Point {
double x1,x2,y1,y2;
double d,x3,y3;
Point(double x1,double y1,double x2,double y2){//构造方法
this.x1 = x1;
this.x2 = x2;
this.y1 = y1;
this.y2 = y2;
}
void TestPoint(){//求距离和中点坐标
x3 = (x1 + x2)/2;
y3 = (y1 + y2)/2;
d = Math.sqrt((x1 - x2)*(x1 - x2) + (y1 - y2)*(y1 - y2));
System.out.println("(" + x3 + ","+ y3 + ")");
System.out.println(d);
}
public static void main(String[] args) {
Point p = new Point(1,1,2,2);
p.TestPoint();
}
}
如果还有其他要求的话,我再改进一下。
java nullpointexception这个是什么情况?
这个是空指针异常. 首先我们要了解一下什么是Java异常.
什么是Java异常?
异常就是有异于常态,和正常情况不一样,程序出现了非正常情况需要让操作的人知道。并在Java中阻止当前方法或作用域继续之情的情况,称之为异常。
看一下源码怎么说?
注释翻译:
当应用程序在访问对象属性或者方法的情况下尝试使用 null 值时抛出。 这些包括:
调用null对象的实例方法。
访问或修改空对象的字段。
将数组的长度视为null。
就是一句话, 你操作的对象没有实例化, 或者没有初始化数据. 然后你又操作了它, 就会出现该异常.
怎么避免这个情况?
在操作对象的时候, 使用对象的默认值, 方法或者属性不设置null. 就可以避免大多数的情况.
多测试编写的代码.
小沐学学学, 为你手打编写, 感谢您的阅读. 加油, 共勉.
java如何实现填充算法?
import javax.swing.JFrame;
public class EdgeFill {
public static void main(String args[]) {
// A(3,3)B(6,20)C(15,18)D(20,3)
// AB BD AC CD
new EdgeFill();
}
private TwoDimen env;
public EdgeFill() {
JFrame frame = new JFrame();
env = new TwoDimen();
frame.getContentPane().add(env);
frame.setBounds(100, 100, 600, 600);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setVisible(true);
int[] x = new int[] { 3, 6, 20, 15 };
int[] y = new int[] { 3, 20, 3, 18 };
for (int i = 0; i < x.length; i++) {
if (i < x.length - 1)
edgeFillOnce(x[i], y[i], x[i + 1], y[i + 1]);
else
edgeFillOnce(x[i], y[i], x[0], y[0]);
}
}
private void edgeFillOnce(int x1, int y1, int x2, int y2) {
int k, i, j;
float x, y, dx, dy;
k = Math.abs(x2 - x1);
if (Math.abs(y2 - y1) > k) {
k = Math.abs(y2 - y1);
}
dx = (float) (x2 - x1) / k;
dy = (float) (y2 - y1) / k;
x = (float) x1;
y = (float) y1;
for (i = 0; i < k+1; i++) {
// env.drawPoint((int)(x+0.5), (int)(y+0.5));
for (j = (int)

