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

Javaのクラスの作成方法―クラスの記述方法、定義方法など

Javaのプログラムは、クラスを最小の単位として構成されます。クラスの記述方法、定義方法など、Javaのクラスの作成方法についてまとめています。

クラスの作成方法について

クラスは、Javaのプログラムが構成される最小の単位です。 クラスには、フィールド(変数などのデータ)とメソッド(処理)が主な構成要素です。 フィールドとメソッドをカプセル(クラス)の中に閉じ込めるという意味から、クラスはデータと処理をカプセル化したものといわれます。

クラスは、キーワードclassを使用して宣言します。 クラス宣言の一般的な構文は、次の通りです。

<修飾子> class <クラス名> {
    <フィールド(変数などのデータ)>
    <メソッド(処理)>
}

クラスの作成3つのポイント

クラスを作成するにあたって、まずは、以下の3つのポイントを覚えておきたいです。

  1. クラス宣言

    クラスの宣言の中で、キーワードclassおよびクラス名は必須です。 クラス宣言の中で修飾子を指定する必要がなくても、指定しなかった場合は、デフォルトの修飾子がクラスに割り当てられます。

  2. フィールド

    クラスの主な構成要素として、変数などのデータの保存先であるフィールドが記述できます。 フィールドの記述は必須ではなく、必要に応じて記述します。

  3. メソッド

    もう1つのクラスの主な構成要素として、処理を記述するメソッドがあります。 クラスのデータを他から使うだけなど、メソッドの記述も必須ではなく、必要に応じて記述します。

実際にクラスの作成してみる

実際にクラスの作成してみます。サンプルコードと合わせて、覚えておきたいポイントを説明していきます。

なお、クラスは、コードをテンプレート化して使い回すためのコードです。 テンプレートから使うモノ(オブジェクト)にするためにはnewキーワードでクラスを使える形式にします。 この形式をインスタンスといいますが、作成したクラスを使うにはインスタンスを作成して呼び出すコードが必要です。

あと、Javaのプログラムはmainメソッドから処理が始まります。 mainメソッドが無いと処理が始まりません。

今回は、作成したクラスをインスタンス化して呼び出すクラスを、別のクラスとして作成して、そのクラスにmainメソッドを記述するサンプルコードにしました。

クラスの作成のサンプルコード1(HelloMessage.java)

名前を保存したり、Hello○○の文字を組み立てるHelloMessageクラスです。

class HelloMessage {
    private String name;
    void setName(String str) {
        name = str;
    }
    String getHelloMessage() {
        return "Hello"+" "+name+"!!";
    }
}
  1. クラス宣言(class Hello)

    mainメソッドを記述するクラスの場合、publicというキーワードを付けましたが、publicというキーワードを外して、 同じ階層(同じフォルダにあるイメージ)のクラスからしか実行できないクラスにしました。

  2. フィールド(private String name)

    あとで、2つのメソッドから名前を設定、取得するため、保存用にnameという変数をつくりました。 name変数はクラスの枠内でしか使わないので、privateというキーワードを付けて、クラス内だけ参照できるプライベートな変数にしました。

  3. メソッド(void setName(String str))

    入力の引数に設定された名前をname変数に設定するメソッドです。 値を設定するだけで、呼び出しても何もデータを返さないので戻り値の型はvoidにしました。 後で作成するクラスから呼び出せないといけないので、privateは記述しないで、また後で作成するクラスから呼び出せればいいので、publicを付けないメソッドにしました。

  4. メソッド(String getHelloMessage())

    特に入力なしに呼び出されたら、「Hello ○○!!」の○○にnameの文字列に置き換えて返却するメソッドです。 setNameメソッドと同様の理由で、privateもpublicも記述しませんでした。 戻りが文字列なので戻り値の型はStringという文字列型にしました。

クラスの作成のサンプルコード2(HelloMessageUser.java)

HelloMessageクラスを使って、メッセージを出力するクラスです。

public class HelloMessageUser {
    public static void main(String[] args){
		HelloMessage hello = new HelloMessage();
		hello.setName("World");
		System.out.println(hello.getHelloMessage());
    }
}
  1. クラス宣言(public class HelloMessageUser)

    mainメソッドを記述するクラスなので、publicというキーワードを付けで Javaの実行環境側から呼び出せるようにします。

  2. フィールド

    特に必要ないので記述していません。

  3. メソッド(public static void main(String[] args))

    HelloMessageのインスタンスを作成して、「World」を名前に設定して、インスタンスから取得したメッセージを表示します。

    mainメソッドは、特別なメソッドで、Javaの実行環境側から呼び出せるようにpublicを付けて、 クラスをインスタンス化しないで呼び出す仕様のためstatic、 戻り無しのvoid、コマンドラインから引数を受ける機能がmainメソッドにあり、String[] argsの引数を記述します。

クラスの作成のサンプルコードのコンパイル

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

クラスの作成のサンプルプログラムの実行

java HelloMessageUser
Hello World!!

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

戻る

スポンサーリンク

サイト内のページ

言語
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スキル体系 /トレンド履歴

スポンサーリンク