Javaの必須知識!クラスとインスタンスについて基本的な使い方を理解しよう
  • facebookページ
  • twitterページ
  • 2020.01.06

    Javaの必須知識!クラスとインスタンスについて基本的な使い方を理解しよう

    Javaでプログラミングを行う上で必須となる知識に「クラス」と「インスタンス」の存在があります。

    本記事では、Javaでにおけるクラスとインスタンスの関係、基本的な知識と使い方についてご紹介していきたいと思います。

    Javaのクラスとインスタンスの違いについて理解する


    Javaプログラミングの学習において、初期の段階で「クラス」「インスタンス」の知識を理解しておく必要があります。

    クラスとは

    Java言語のようなオブジェクト指向と呼ばれるプログラミング言語で使用され、処理のまとまりを「クラス」と呼びます。

    クラスには「フィールド」と呼ばれる値を格納するための変数と、「メソッド」と呼ばれる振る舞い(処理)が記述されます。

    ポテパンダの一言メモ

    プログラミングは建築によく例えられますが、「クラス」は建築業界でいうところの設計図のような役割を果たします。

    インスタンスとは

    上記でクラスは建築業界での設計図と表現しましたが、「インスタンス」は建築業界でのいう実際の「建物」を指します。

    ユーザーが実際に利用する場合、建物の設計図だけでは利用することが出来ません。

    設計図から組み立てられた「建物」が必要になりますよね?

    プログラミングにおいても同じで、「クラス(設計図)」だけでは利用することは出来ず、実際に利用するためにはクラスから作られた「インスタンス(建物)」が必要になります。

    Javaでクラスからインスタンスを生成する方法とは


    実際にJavaプログラムでクラスからインスタンスを生成する方法をご紹介していきます。

    インスタンスの生成にはnew演算子を使用する

    クラスからインスタンスを生成する場合、下記のようにnew演算子を使用します。

    インスタンスのフィールド値やメソッドを利用する方法

    生成したインスタンスのフィールド変数やメソッドは下記のように利用します。

    インスタンスの生成から操作までJavaのサンプルコードで確認


    では実際にクラスからインスタンスを生成して操作するまでの方法をJavaのサンプルコードで確認していきたいと思います。

    サンプルコードを用意する

    今回利用するサンプルコードは下記の通りで「Main.java」として作成しました。

    サンプルコードでは「犬」と「猫」のインスタンスを生成し、それぞれのフィールド値の値をintroduceメソッドを利用して出力するサンプルです。

    サンプルコードを実行した結果が下記の通りとなります。

    サンプルコードの内容を確認しよう

    サンプルコードの実装内容についてご紹介していきます。

    インスタンスの生成

    まず※1では「dog」と「cat」2つのインスタンスを生成していることがご確認頂けます。

    今回のサンプルコードの場合、引数を3つ指定した「コンストラクタ」と呼ばれるインスタンス生成時の初期化処理 を定義しており、インスタンス生成時に指定した情報がフィールド情報に保持されます。

    Animalクラス内の※1がコンストラクタの処理を定義している部分になります。

    フィールド値を参照してみよう

    次に※2では、それぞれのインスタンスが持つフィールド値の値を参照しています。

    インスタンス生成時に指定した値をコンストラクタでフィールド変数に格納し、後ほどMainクラスから参照出来ていることがご確認頂けます。

    同じクラスから生成されたインスタンスですが、出力されている値が異なるのは「実体(インスタンス)」が異なるためです。

    ポテパンダの一言メモ

    Javaでプログラムを行う上で重要なポイントとなりますので、しっかりと確認しておきましょう。

    メソッドを実行してみよう

    最後に※3では、それぞれのインスタンスから「introduce」メソッドを実行しています。

    introduceメソッドの処理としては、フィールド変数に保持した値をコンソールに出力するというものです。

    それぞれインスタンス初期化時に指定した値が出力されていることをご確認頂けます。

    さいごに:Javaにおいてクラスとインスタンスの関係性は必須知識

    本記事では、Javaにおける「クラス」と「インスタンス」の関係性や使い方をサンプルコードを交えながらご紹介してきました。

    オブジェクト指向を用いたプログラミング言語を利用するプログラマーにとって「クラス」と「インスタンス」の使い方は必須の知識となります。

    今回はJavaのサンプルコードでご紹介してきましたが、基本を理解出来ていればJava以外のオブジェクト指向プログラミング言語でも応用することが可能ですので、しっかりと理解出来るように確認してみてください。



    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE