a-17 オブジェクト
Mar 30, 2021
a-17 オブジェクトとクラス

「オブジェクト」は、たくさんの値を持つことができ、複数の変数と関連する関数をパッケージ化することでより扱いやすくなります。
「オブジェクト」を作る前には「クラス(class)」を定義する必要があります。
「クラス」は、「オブジェクト」の仕様を定めたものです。
「クラス」には全てのデータ型が使えます。
「Circle」という名前のクラスを定義してみます。
class Circle {//class クラス名(頭は大文字推奨)
float x, y, speed;
int eSize;
//コンストラクタ
Circle (float tempY, int tempEsize, float tempSpeed) {
x = 0.0; //x座標の初期値
y = tempY;//y座標の初期値
eSize = tempEsize;
speed = tempSpeed;
}
//円の位置を更新するメソッド
void update() {
x += speed;
if (x > width) {
x = 0;
}
}
void display() {
ellipse(x, y, eSize, eSize); //円を描画
}
}
「クラス」を定義したら「オブジェクト」を作成します。
Circle c1,c2,c3;//オブジェクト変数を宣言 class名 変数名
void setup() {
size(400, 400);
noStroke();
fill(247,219,73);
//インスタンスを作成
c1 = new Circle(50, 10, 5.0);//サイズ,y座標,スピード
c2 = new Circle(150, 40, 3.0);
c3 = new Circle(300, 40, 1.0);
}
void draw() {
background(0);
c1.update();
c1.display();
c2.update();
c2.display();
c3.update();
c3.display();
}

「クラス」は別「タブ」に記述すると便利です。





