【くらす】
クラス とは?
最終更新:
💡 オブジェクトを量産するための「たい焼きの型」
データ(プロパティ)と処理(メソッド)をひとまとめにした設計図のことで、この設計図からオブジェクトを生成して使うオブジェクト指向の基本概念。
📌 このページのポイント
関数だけじゃダメなの?
関数だけでも書けるよ。クラスは、たとえば犬の名前などのデータと、吠えるといった処理を関連づけて定義する方法。プログラムの目的に合わせて使うもので、どの場面でも必要というわけではないんだ。
インスタンスって何?
どうやって作るの?
JavaScriptならnew Dog()のようにnewで作り、constructorに初期化処理を書けるよ。PythonならDog()のようにクラスを呼び、初期化には__init__を使う。newやconstructorという名前が全言語共通なのではないんだ。
名前を変えたら、ほかの犬も変わる?
JavaScriptのclassも同じ仕組み?
オブジェクトの共通の性質を定義する点は似ているよ。JavaScriptのclassはプロトタイプを基礎にしていて、クラス独自の規則もある。通常のインスタンスメソッドはプロトタイプ上で共有されるので、全部の処理が各オブジェクトへコピーされるという意味ではないんだ。
まとめ:ざっくりこれだけ覚えればOK!
「クラス」って出てきたら「データと処理をまとめたオブジェクトの設計図」と思えばだいたいOK!
📖 おまけ:英語の意味
「class」 = 分類、種類
💬 同じ性質を持つものの分類という意味だよ。プログラミングでは、オブジェクトの共通した性質や振る舞いを定義するものとして考えると分かりやすいね。