【Java入門】オブジェクト指向とは?オブジェクトとインスタンスの関係

explanation-about-object-orientation-of-java-and-relationship-between-java-objects-and-instances.jpg

Javaは「オブジェクト指向言語」に分類されます。プログラミング初心者の方がつまずきやすいポイントの1つに、このオブジェクト指向と呼ばれる概念があります。オブジェクト指向の意味を理解できず、お困りの方も多いのではないでしょうか。
オブジェクト指向は、拡張性や保守性の高いプログラムを書くために不可欠な考え方です。そこで今回は、オブジェクト指向の概要、オブジェクトとインスタンスの関係についてご紹介します。

IT業界まるわかりガイドは、日本初Web専門スクールのインターネット・アカデミーが運営する業界情報メディアです。最新の業界情報を、初心者にも分かりやすくご紹介しています。

IT研修・ITスクールのインターネット・アカデミー

目次

オブジェクト指向とは?

explanation-about-object-orientation-of-java-and-relationship-between-java-objects-and-instances_pic01.jpg

「オブジェクト」という言葉には、「モノ」という意味があります。オブジェクト指向プログラミングでは、プログラムの機能や役割を区別し、それぞれを部品(オブジェクト)として組み合わせることで1つのプログラムを作ります。

オブジェクト指向のメリットは、既存プログラムを活用できることです。新規でプログラムを書く際、過去に作成したプログラムをそのまま、もしくは修正を加えて再利用すれば、プログラムを一から書く手間を省けます。

小規模なプログラムを開発する場合は、オブジェクト指向のメリットを感じられる機会は少ないかもしれませんが、膨大な量のコーディングを必要とする場面では欠かせない考え方です。

クラス、インスタンスとは?

クラス、インスタンスとは?

オブジェクト指向で重要なキーワードが「クラス」と「インスタンス」です。実際のプログラムを見る前に、具体的なイメージをつかんでおきましょう。

クラスとは

クラスはオブジェクトの設計図です。オブジェクトの属性(プロパティ)や振る舞い(メソッド)を記述し、オブジェクトのひな形としての役割を果たします。プロパティはオブジェクトが持つデータ、メソッドはオブジェクトが持つ機能を指します。

分かりづらいという方は、オブジェクトを自動車、クラスを自動車の設計図と考えると良いでしょう。この場合、自動車の走る・曲がる・止まるといった機能がメソッド、車体サイズや色、排気量といったスペックがプロパティに対応します。

インスタンスとは

クラス(設計図)を実体化したものがインスタンスです。自動車の例で考えれば、設計図をもとにして製造された自動車がインスタンスにあたります。また、クラスからオブジェクトを生成することをインスタンス化と呼びます。
ただし、インスタンス(およびインスタンス化)はオブジェクト(オブジェクト化)と呼ばれることもあるため、注意しましょう。

オブジェクトとインスタンスの関係

オブジェクトとインスタンスの関係

自動車(オブジェクト)に乗りたいのに、自動車の設計図(クラス)を渡されても困ってしまいます。欲しいのは設計図ではなく、実体のある自動車(インスタンス)だからです。プログラムの中でオブジェクトを利用するためには、クラスの記述だけではなく、インスタンス化を行う必要があります。

インスタンス化の構文は以下のように記述します。

クラス名 変数名 = new クラス名();

【プログラム例】

IDcard a = new IDcard();
a.number = 0001;
a.name = 鈴木和子;
System.out.println("社員番号:" + a.number  +" 氏名" + a.name);

最初の行で、new IDcard() という記述によってIDcardクラスのインスタンスを生成し、変数aに代入しています。変数aはIDcard型の変数となります。そして次の行で、変数aにインスタンス変数numberとnameを持たせて値を代入しています。

おわりに

Javaを学び始めた方にとって、クラスやインスタンス、オブジェクトは理解しづらい概念です。オブジェクト指向プログラミングでは、オブジェクトの設計図であるクラスにプロパティとメソッドを記述し、そこから実体としてインスタンスを生成するということを、しっかりと頭に入れておきましょう。

インターネット・アカデミーのJava講座では、「オブジェクト指向」などJavaの基本的な考え方から実践的なスキルまで無理なく学ぶことができます。現場で活かせる知識を身に付けたい方は、毎日開催されている無料体験レッスンにお越しください。

Webデザイン・プログラミングスクール インターネット・アカデミー

関連記事

【Java入門】プログラミング言語で何ができるの?初心者の疑問を解消! 【初心者入門編】プログラミングを学ぶならJavaから!その理由 【Java入門】コンパイル、クラス、メソッド...押さえたい基本用語まとめ

関連講座

Java講座 ITエンジニア総合コース

Web業界への就転職・キャリアアップを成功させたいと考えている方へ
日本初そして日本唯一のWeb専門スクールインターネット・アカデミー

自分にぴったりのコースが見つかる

インターネット・アカデミーでは、Web業界を目指すあらゆる方にお応えすべく、多彩なコースをご用意しています。

Webデザインを学びたい方

プログラミングを学びたい方

自分のペースとスタイルで学べる

毎回好きな受講形式を選んで学習することができるので、働きながらじっくり通いたい方も短期間での就職を目指す方も自分の都合に合わせて、スケジュールを組むことができます。

  • ライブ授業

    現役のプロインストラクター
    と仲間と学ぶメリット

    ライブ授業
  • マンツーマン授業

    インストラクターと
    1対1という贅沢

    マンツーマン授業
  • オンデマンド授業

    いつでも学びたいことを
    学べる

    オンデマンド授業

自分に適した学習方法を探す

インターネット・アカデミーでは、無料体験レッスンを毎日開催しています。デザインやプログラミングの体験ができるのはもちろん、実際の授業に参加したり、就職や転職のご相談、通学スケジュールのご相談なども承っております。

  • ご要望をお伺い

    ご要望をお伺い

    まずはお客様のご要望をお伺いし、お一人おひとりの目的や悩みに最適な内容にカスタマイズ。お客様専用の内容で当日ご案内いたします。

  • カウンセリング

    カウンセリング

    就職や転職、在宅で働きたいなど、お客様の希望を叶えるために専任のスタッフが最適な学習プランをご提案。現在の仕事のご相談なども承ります。

  • 体験レッスン

    体験レッスン

    「自分に向いている分野は?」「自分にできる?」そんな疑問を解決するレッスンを無料で体験。デザインもプログラミングもお試しいただけます。

無料体験レッスン・個別相談のご予約

当日ご希望の方やお急ぎの方は、フリーダイヤルにてご予約いただけます。

0120-746-555 フリーダイヤル受付時間(平日・土日) 10時-21時 オンライン予約

IT研修・人材育成のご相談を無料で承っております
法人専用社員研修、内定者・新人研修のご予約

インターネット・アカデミーでは、
あらゆるニーズに合わせた研修カリキュラムを取り揃えています。

「自社に最適な研修プランを相談したい」「研修費用の相談をしたい」「助成金を申請したい」など、お電話またはお問い合わせフォームよりお気軽にご連絡ください。

03-3341-3781 受付時間(平日・土日) 10時-21時 法人専用 お問い合わせフォーム