在一个java文件里定义多个class是允许的,不过public class只能有一个,你这个写法有问题,你应该写成这样: public class PointTwo{ public static void main(String[] args){ .... } } class PointTwo{ .... }
改成下面这样试试看:public class Point { public static void main(String[] args) { Point p = new Point(2,3); System.out.println("p.x() = " + p.x() + ",p.y()=" + p.y()); System.out.println("p = " + p); Point q = new Point(7,4); System.out.println("q = " + q); if(q.equals(p)) System.out.println("q equals p"); else System.out.println("q does not equals p"); q = new Point(2,3); System.out.println("q = " + q); if(q.equals(p)) System.out.println("q equals p"); else System.out.println("q does not equals p"); } private double x, y; public Point(double a, double b) { x = a; y = b; } public double x() { return x; } public double y() { return y; } public boolean equals(Point p) { return (x==p.x && y==p.y); } public String toString() { return new String("(" + x + "," + y + ")"); } }
public class PointTwo{
public static void main(String[] args){
....
}
}
class PointTwo{
....
}
public static void main(String[] args) {
Point p = new Point(2,3);
System.out.println("p.x() = " + p.x() + ",p.y()=" + p.y());
System.out.println("p = " + p);
Point q = new Point(7,4);
System.out.println("q = " + q);
if(q.equals(p))
System.out.println("q equals p");
else
System.out.println("q does not equals p");
q = new Point(2,3);
System.out.println("q = " + q);
if(q.equals(p))
System.out.println("q equals p");
else
System.out.println("q does not equals p");
} private double x, y; public Point(double a, double b) {
x = a;
y = b;
} public double x() {
return x;
} public double y() {
return y;
} public boolean equals(Point p) {
return (x==p.x && y==p.y);
} public String toString() {
return new String("(" + x + "," + y + ")");
}
}
但我不知道那样是什么意思
为什么按我的写却不行?
如何写才行?
非要自己定义类!
但是没说在一个文件里可以定义两个同名的类吧?