//0から100までのXとYの座標を表す
class MyPoint
{
//インスタンスフィールドです
private int x;
private int y;
//引数のないコンストラクタ
public MyPoint ()
{
System.out.println("初期座標はxは" + x + "です。Yは" + y + "です。\n");
}
//引数有のコンストラクタ
public MyPoint (int px, int py)
{
if((px >= 0 && px <=100) && (py >= 0 && py <=100))
{
x = px;
y = py;
System.out.println("座標xは" + x + "で、座標Yは" + y + "です。\n");
}
else
{
System.out.println("0~100を入力してください");
}
}
//インスタンスメソッド
public void setX(int px)
{
x = px;
System.out.println("座標xは" + x + "です。\n");
}
public void setY(int py)
{
y = py;
System.out.println("座標Yは" + y + "です。\n");
}
//インスタンス変数
public int getX()
{
return x;
}
public int getY()
{
return y;
}
}
class Lessen5
{
public static void main (String args[])
{
System.out.println("引数なしのコンストラクタを実行します");
MyPoint mypoint1 = new MyPoint();
System.out.println("引数2個のコンストラクタを実行します");
MyPoint mypoint2 = new MyPoint(100,20);
System.out.println("引数が1つあるメソッドを実行しました、");
mypoint1.setX(55);
System.out.println("引数が1つあるメソッドを実行しました、");
mypoint1.setY(99);
int pointX = mypoint1.getX();
int pointY = mypoint1.getY();
System.out.println("オブジェクトmypoint1XYの座標を受け取るint型のメソッドを実行しました");
System.out.println("X座標は" + pointX + "で、Y座標は" + pointY + "です。\n");
int point2X = mypoint2.getX();
int point2Y = mypoint2.getY();
System.out.println("オブジェクトmypoint2XYの座標を受け取るint型のメソッドを実行しました");
System.out.println("X座標は" + point2X + "で、Y座標は" + point2Y + "です。");
}
}
/*
実行結果
引数なしのコンストラクタを実行します
初期座標はxは0です。Yは0です。
引数2個のコンストラクタを実行します
座標xは100で、座標Yは20です。
引数が1つあるメソッドを実行しました、
座標xは55です。
引数が1つあるメソッドを実行しました、
座標Yは99です。
オブジェクトmypoint1XYの座標を受け取るint型のメソッドを実行しました
X座標は55で、Y座標は99です。
オブジェクトmypoint2XYの座標を受け取るint型のメソッドを実行しました
X座標は100で、Y座標は20です。
*/
追記:今回できたmypoint1とmypoint2のオブジェクトなんだろうかなと思う、
たしかに、オブジェクトが出来たし、便利な気もする今日この頃
0 件のコメント:
コメントを投稿