私のコードは、Point と Line の 2 つのクラスを扱います。直線は 2 つの点で構成されます:
import java.util.Scanner;
public class Line {
Scanner scan = new Scanner (System.in);
private Point p1,p2;
public Line(int x1, int x2, int y1, int y2){
p1=new Point(x1,y1);
p2=new Point (x2,y2);
ここでコンストラクターを作成する必要がありますが、エイリアシングのためにこのコードは合法ではありません。
public Line (Point p1, Point p2){
this.p1=p1;
this.p2=p2;
Line a1=new Line (p1.getX(),p1.getY(),(p2.getX()),p2.getY());
文字列 toString メソッド:
public String toString()
{
return "Line between: (" + p1 + p2 + ")";
}
主なものは次のとおりです。
Point a=new Point (1,2);
Point b=new Point (2,3);
Line x=new Line(a,b);
System.out.println(a);
System.out.println(b);
System.out.println(x);
ここでの出力は正常に出力されますが、私の質問は次のとおりです。1) コンストラクターは問題ありませんか? エイリアシングの原因ですか?2) String toString メソッドは合法ですか?
答えてくれてありがとう。