オブジェクトって

オブジェクトは、見える見えない、あるないに関わらず、概念とかをさす抽象的な言葉で、型を表します。

ひとも、オブジェクトです。
犬も、オブジェクトです。

オブジェクトには、プロパティがあります。
プロパティは財産で、ひとや犬には、名前というプロパティがあります。

オブジェクトには、メソッドがあります。
メソッドはふるまいを指し、ひとや犬は、呼吸するというメソッドをもっています。

オブジェクトを語るとき、次の言葉がよく出てきます。
-隠蔽
オブジェクトはそれぞれの情報を隠蔽します。
ひとは、うちに秘める心を隠蔽することがあります。
協調する上で、パブリックにしなくてよいことはパブリックにしないとか、
プライベートに何かを保持していても状況によって開示しないことがあります。
ひとは、同じふるまいの結果を提供するのに、過程がちがうことがあります。
見積もりくださいと営業のひとに言ったら、見積もりが出てくる、
これは相手の営業さんのふるまいの結果ですが、
過程はそれぞれちがっていて、営業さんの汗と涙は隠蔽されるわけです。

-継承
オブジェクトはそれぞれの親の特性を引き継ぎます。
ひとと犬は、生き物です。
生き物には、動物か植物かの分類があります。
そしてひとにも犬にも動物であるというプロパティが既定で与えられています。

-多態
オブジェクトはそれぞれのメソッド名を同じ名前で持っていたりします。
たとえば、呼吸するというメソッドで、さかなだったらどうでしょう。
呼吸しますけど、えら呼吸です。
同じように、Breathe()というメソッドを実行しても、動く部分が違う。
ひとははい、さかなはえら。
同じ名前のメソッドを実行できるけど、オブジェクトごとに動作がちがう、だけど効果は同じだったりする。
みたいなのを、多態っていいます。

オブジェクトとかいいましたけど、オブジェクトは型だったりして、実体がなかったりします。
ある特定の型として実体をもつよう生成されたものをインスタンスといいます。
あーあーあー、インスタンスとかいって。
もうダメだ、ついていけない。
そう思うひとはだいたいオブジェクトを軽くわかればよいと思いますのでこの先は挫折しましょう。

オブジェクトは型のこと、インスタンスは実体をもって生まれたもののこと。
ちがいみたいなところで、インスタンスのメンバというのがあります。
実体をもたなければアクセスできない、生まれないプロパティやメソッドのことです。

ひとという表現だけで、それが男か女かなんてわかりません。
ひととして、あなたが生まれたから、男女がわかります。
あながたいないと名前もなければ心もない。
呼吸すらしない。
あなたがここにいないのに、「あなたの名前はなんですか?」ってきけない。
「ひとの名前はなんですか?」なんておかしい。
それがインスタンスの驚異です。

型だけわかっていたら、どうでしょうか?
型は設計図ですので、ひとという型には、さっき出てきた動物か植物かというプロパティが
生物という型から継承されています。
ひとである以上、動物です。
「ひとというのは、動物ですか?」という質問は、誰か特定の人間が生まれていなくても答えられることです。
そういうことは、型の情報から読み取れるもので、staticな情報といいます。
staticな情報にはインスタンスがなくてもアクセスできて、
インスタンスを必要としないメソッドなんていうのもあったりします。

型というのを人間にあてはめて考えるということはわりと難しくて、
何が人間の根源というか、必須装備なのかという話になります。
それぞれの考え方があると思いますが、
ちょっと自分なりに定義してみるというのは面白いことです。