【Java入門】インスタンスとは?クラスとの関係(インスタンス変数)

こんにちは!エンジニアの中沢です。

Javaでは、クラスで定義した処理を実行するために、そのクラスのインスタンスを生成する必要があります。生成したインスタンス(オブジェクト)から、そのクラスのメンバ変数を参照したり、メソッドを呼び出して使用します。

この記事では、

  • クラスとは
  • インスタンスとは
  • インスタンスを生成する方法
  • オブジェクト指向とは
  • インスタンス変数(メンバ変数)とメソッドの使い方

などの基本的な内容から、応用的な使い方に関しても解説していきます。

今回はこれらの方法を覚えるために、インスタンスのさまざまな使い方をわかりやすく解説します!

クラスとインスタンス

クラスとは

クラスとは、プログラムを実行するための処理をまとめたモノで、クラスの処理の中にはメンバ変数や、処理を実行するためのメソッドがあります。

ちなみに、メンバ変数とはクラス内で使用する変数のことで、メソッドとはメンバ変数などを使って行う処理をひとまとめにしたものです。

クラスは次のように記述します。

class クラス名 {
   実行処理...
}

クラスの詳しい使い方はこちらの記事で解説しているので、ぜひ確認してください。

【Java入門】クラスの使い方総まとめ
更新日 : 2019年7月24日

インスタンスとは

Javaのようなオブジェクト指向のプログラミング言語では、処理をまとめたクラスの中の処理を実行するために、そのクラスのインスタンス(オブジェクト)を生成する必要があります。

そして、生成したクラスのインスタンスから、そのクラスのメンバ変数を参照したり、メソッドを呼び出して使用します。よく使われる例として、クラスが設計図で、インスタンスが設計図を元に作られた実体となります。

詳しくは使いながら理解すると良いでしょう。

オブジェクト指向とは

オブジェクト指向を一言でいうと、「効率よく開発するための考え方の1つ」のことです。

アプリ開発は大規模になってくると内部のプログラムが複雑になり、プログラムの追加をしたり、修正を行ったりすることが難しくなります。

そこで、効率よく開発するための考え方として作られたのがオブジェクト指向です。オブジェクト指向のプログラムは「独立していて、再利用しやすく、かつ拡張しやすいほど良い」という考え方をしています。

オブジェクト指向についてはこちらの記事で詳しく解説しているので、ぜひ確認してください。

オブジェクト指向ってなに?誰でもわかるようにやさしく解説
更新日 : 2020年7月14日

インスタンスを生成する方法

クラスを使用するには、インスタンスを生成する必要があります。

インスタンスを生成する方法を次のプログラムで確認してみましょう。

class ClassSample {
    // メソッドの宣言・定義
    void methodSample() {
        // 処理内容
        System.out.println("samurai");
    }
}

public class Main {
    public static void main(String[] args) throws Exception {

        // インスタンス(オブジェクト)を生成
        ClassSample cl = new ClassSample();

        // メソッドの呼出し
        cl.methodSample();
    }
}

実行結果:

samurai

このプログラムでは、インスタンスを生成して、クラスで定義されたメソッドを呼び出して使用しています。

インスタンス変数(メンバ変数)とインスタンスメソッドの使い方

ここでは、インスタンス変数(メンバ変数)とインスタンスメソッドの使い方を解説します。

クラスからインスタンスを生成して、インスタンスメソッドとインスタンス変数を使う方法を次のプログラムで確認してみましょう。

class ClassSample {
    String str = "サムライ";

    // メソッドの宣言・定義
    void methodSample() {
        // 処理内容
        System.out.println("samurai");
    }
}

public class Main {
    public static void main(String[] args) {

        // インスタンス(オブジェクト)を生成
        ClassSample cl = new ClassSample();

        // インスタンスメソッドの呼出し
        cl.methodSample();

        // インスタンス変数(メンバ変数)の取得
        System.out.println(cl.str);
    }
}

実行結果:

samurai
サムライ

このようにして、クラスからインスタンスを生成して、インスタンスメソッドとインスタンス変数を使うことができました。

まとめ

いかがでしたか?

今回はインスタンスの使い方を解説しました。クラスからインスタンスを生成すれば、クラスで定義したメソッドや変数を使えるのでぜひ活用してくださいね。

もし、Existsメソッドの使い方を忘れてしまったらこの記事を確認してください!

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

中沢 丈

中沢 丈

フリーランスエンジニア。
システム開発からコンテンツ作成まで幅広く対応します。

連絡先はこちらです。
[email protected]

おすすめコンテンツ

いまならレッスン期間が2週間延長!この秋、プログラミングを学ぼう

転職成功で受講料0円!あなたもプログラミングを学んでエンジニアデビュー