基本情報技術者講座の講師ブログ

クラスとオブジェクトの違い

オブジェクト指向プログラムはいまいちイメージがしにくいですね。
私も新卒でIT企業に入社したときのJavaの研修は苦手で苦労しました。
特に、当時はクラスとオブジェクトの違いがいまいちピンときませんでした。

クラスはオブジェクトの定義のことです。一方、クラスは実体を持ったオブジェクトのことです。
「クラスは型」であり「型で作られたものがオブジェクト」という表現をよく使います。
クッキーやたい焼きの型がクラス、型でできたクッキーやたい焼き自体がオブジェクトです。
このような型を使うことで、大量生産が可能になります。
そのため、オブジェクト指向プログラミングは効率のよい大規模な開発が可能になります。これがオブジェクト指向の大きなメリットです。

デメリットとしては、設計に時間がかかる、深く理解したエンジニアの確保が難しい、などがあります。
オブジェクト指向のプログラミング言語が沢山ありますが、オブジェクト指向を深く理解できるエンジニアはそれほど多くありません。しかし、その分、エンジニアとして需要が高いといえます。これからプログラミングを勉強する人は、オブジェクト指向をマスターすることを目指しましょう。