概要
よくオブジェクトやオブジェクト指向型などよく聞きますが、自分の中で理解できていなかったので、基本的な事をまとめていきます。
オブジェクトとは
オブジェクトはクラスとかインスタンスのことを指します。
-
クラスとは
属性(固有のデータ)と操作(メソッド)を定義したもので、設計図のようなものです。例えば、家を作るときの設計図と考えると分かりやすいと思います。 -
インスタンスとは
クラス(設計図)から実際に作り出したものをインスタンスと言います。
例えば腕時計を作りたいとします。まずどんなものを作るか頭の中で決め、設計図を作ります。その設計図を元に腕時計を作ります。この話における設計図がクラスで、実際に出来上がった腕時計がインスタンスです。そして、設計図と腕時計がオブジェクトです。
ここで混乱しやすいのですが、クラスだけでもオブジェクトと呼ぶことがありますし、インスタンスだけでもオブジェクトと呼びます。またクラスとインスタンスを合わせてオブジェクトと呼ぶこともあります。オブジェクトは結構ざっくりしているので、そのときの文脈によって変わります。
最後に
結構ざっくりしていますが何となく理解するにはちょうどいいかなと思います。