トップ 言語 Java クラス、メソッド、インターフェース インスタンスの利用方法

インスタンスの利用方法―インスタンスの作成、メソッド呼出、クラス分け方法など

インスタンスの作成、メソッド呼出、クラス分け方法など。Javaのクラスインスタンスの利用方法についてまとめています。

Javaのクラスインスタンスの利用3つのポイント

Javaのクラスインスタンスを利用する場合、まずは以下の3つを押さえておきたいです。

  1. クラスインスタンスの作成方法

    new演算子を使用してクラスインスタンスを生成します。

  2. クラスインスタンスのメソッドの呼出方法

    <インスタンス格納変数>+「.(ドット)」+<メソッド>でクラスインスタンスのメソッドを呼び出します。

  3. インスタンスのクラス分け方法

    instanceof演算子を使用して、あるクラスインスタンスが特定のクラスかどうか判断できます。

クラスインスタンスの作成とメソッドの呼出方法

Java のオブジェクトは、クラスをインスタンス化することによって作成されます。 オブジェクトはnew演算子で作成します。

<クラス名> <変数名> = new <コンストラクタ>

オブジェクトを参照するには、参照変数を使用します。 参照変数は、基本データ型の変数を宣言するのと同じように宣言します。

クラスの参照変数にクラスのインスタンスを代入する場合以下のように記述します。 コンストラクタは、クラス名と同名のメソッドでクラスをインスタンス化する際に呼び出される特別なメソッドです。

作成したインスタンスのメソッドを呼び出す場合は、以下のように「.(ドット)」を使用して呼び出します。

<インスタンス格納変数>+「.(ドット)」+<メソッド>

クラスインスタンスの作成とメソッドの呼出のサンプルプログラム

たとえば、クラスは以下のように定義します。

class HelloMessage {
    private String name;
    void setName(String str) {
        name = str;
    }
    String getHelloMessage() {
        return "Hello"+" "+name+"!!";
    }
}

上記のクラスを実行するには、以下のようにそのクラス用に参照変数を用意(HelloMessage hello)し、 参照変数にインスタンス化したオブジェクトを代入( = new HelloMessage();)して利用します。 また、クラスのメソッドや変数を利用するには、クラス名.メソッド(または変数) というように指定して使用します。

public class HelloMessageUser {
    public static void main(String[] args){
        HelloMessage hello = new HelloMessage();
        hello.setName("World");
        String message = hello.getHelloMessage();
        System.out.println(message);
    }
}

サンプルプログラムのコンパイル

cd <ソースファイルのあるディレクトリのパス>
javac *.java

サンプルプログラムの実行

java HelloMessageUser
Hello World!!

インスタンスのクラス分け方法

あるオブジェクトが特定のクラスの型をもつかどうかを判断するにはinstanceof演算子を使用します。

if (<インスタンス保存変数> instanceof <判定するクラス名>) {
    System.out.println("判定するクラスです。");
} else {
    System.out.println("判定するクラスのインスタンスではありません。");
}

instanceof演算子は、プログラム実行時に、第1オペランドが第2オペランドの型をもつオブジェクトかどうかを見分けます。

第1オペランドはオブジェクトまたは配列要素の名前であると見なされ、第2オペランドはクラス、インタフェース、または配列の型と見なされます。

継承やインターフェースなどを使うようになってくるとinstanceof演算子でのインスタンスのクラス分けの方法が便利になってくると思います。 ここでは、一先ず「instanceof演算子でインスタンスのクラス分けが行える」ということを覚えておければと思います。

もっと知識を広げるための参考

戻る

スポンサーリンク

サイト内のページ

言語
C・C++ /HTML /Java /JavaScript /PHP /シェルスクリプト

開発環境
Ant /Bcc /Eclipse /gcc /gdb /g++ /JDK /JUnit /ZAP

技術・仕様
Ajax /CORBA /Java EE(旧称J2EE) /JNI

ライブラリ/Framework/CMS
jQuery /Lucene /MyBatis /RESTEasy /Spring /Struts /Seasar2 /WordPress

ITインフラ OSとミドルウェア
Linux /Windows /シェル
Apache/Tomcat /MySQL /Redis /Solr /vsftpd

ITインフラ PC 製品
ZOTAC

ITインフラ サーバー
Web公開サーバー構築

ITインフラ ネットワーク
プログラミング /機器 /構築

ITインフラ セキュリティ
公開サーバーのセキュリティ

SI
ホームページの作り方 /小さな会社のISMS

その他
IT用語 /ITスキル体系 /トレンド履歴 /翻訳英語の学習 /RSEUserGuide翻訳

スポンサーリンク