Javaのプログラムは、クラスを最小の単位として構成されます。クラスの記述方法、定義方法など、Javaのクラスの作成方法についてまとめています。
クラスは、Javaのプログラムが構成される最小の単位です。 クラスには、フィールド(変数などのデータ)とメソッド(処理)が主な構成要素です。 フィールドとメソッドをカプセル(クラス)の中に閉じ込めるという意味から、クラスはデータと処理をカプセル化したものといわれます。
クラスは、キーワードclassを使用して宣言します。 クラス宣言の一般的な構文は、次の通りです。
<修飾子> class <クラス名> { <フィールド(変数などのデータ)> <メソッド(処理)> }
クラスを作成するにあたって、まずは、以下の3つのポイントを覚えておきたいです。
クラスの宣言の中で、キーワードclassおよびクラス名は必須です。 クラス宣言の中で修飾子を指定する必要がなくても、指定しなかった場合は、デフォルトの修飾子がクラスに割り当てられます。
クラスの主な構成要素として、変数などのデータの保存先であるフィールドが記述できます。 フィールドの記述は必須ではなく、必要に応じて記述します。
もう1つのクラスの主な構成要素として、処理を記述するメソッドがあります。 クラスのデータを他から使うだけなど、メソッドの記述も必須ではなく、必要に応じて記述します。
実際にクラスの作成してみます。サンプルコードと合わせて、覚えておきたいポイントを説明していきます。
なお、クラスは、コードをテンプレート化して使い回すためのコードです。 テンプレートから使うモノ(オブジェクト)にするためにはnewキーワードでクラスを使える形式にします。 この形式をインスタンスといいますが、作成したクラスを使うにはインスタンスを作成して呼び出すコードが必要です。
あと、Javaのプログラムはmainメソッドから処理が始まります。 mainメソッドが無いと処理が始まりません。
今回は、作成したクラスをインスタンス化して呼び出すクラスを、別のクラスとして作成して、そのクラスにmainメソッドを記述するサンプルコードにしました。
名前を保存したり、Hello○○の文字を組み立てるHelloMessageクラスです。
class HelloMessage { private String name; void setName(String str) { name = str; } String getHelloMessage() { return "Hello"+" "+name+"!!"; } }
mainメソッドを記述するクラスの場合、publicというキーワードを付けましたが、publicというキーワードを外して、 同じ階層(同じフォルダにあるイメージ)のクラスからしか実行できないクラスにしました。
あとで、2つのメソッドから名前を設定、取得するため、保存用にnameという変数をつくりました。 name変数はクラスの枠内でしか使わないので、privateというキーワードを付けて、クラス内だけ参照できるプライベートな変数にしました。
入力の引数に設定された名前をname変数に設定するメソッドです。 値を設定するだけで、呼び出しても何もデータを返さないので戻り値の型はvoidにしました。 後で作成するクラスから呼び出せないといけないので、privateは記述しないで、また後で作成するクラスから呼び出せればいいので、publicを付けないメソッドにしました。
特に入力なしに呼び出されたら、「Hello ○○!!」の○○にnameの文字列に置き換えて返却するメソッドです。 setNameメソッドと同様の理由で、privateもpublicも記述しませんでした。 戻りが文字列なので戻り値の型はStringという文字列型にしました。
HelloMessageクラスを使って、メッセージを出力するクラスです。
public class HelloMessageUser { public static void main(String[] args){ HelloMessage hello = new HelloMessage(); hello.setName("World"); System.out.println(hello.getHelloMessage()); } }
mainメソッドを記述するクラスなので、publicというキーワードを付けで Javaの実行環境側から呼び出せるようにします。
特に必要ないので記述していません。
HelloMessageのインスタンスを作成して、「World」を名前に設定して、インスタンスから取得したメッセージを表示します。
mainメソッドは、特別なメソッドで、Javaの実行環境側から呼び出せるようにpublicを付けて、 クラスをインスタンス化しないで呼び出す仕様のためstatic、 戻り無しのvoid、コマンドラインから引数を受ける機能がmainメソッドにあり、String[] argsの引数を記述します。
cd <ソースファイルのあるフォルダorディレクトリのパス> javac *.java
java HelloMessageUser Hello World!!
Javaとは?から言語の枠を超えるところまで、Java言語についてまとめています。
スポンサーリンク
サイト内のページ
言語
C・C++
/HTML
/Java
/JavaScript
/PHP
/シェルスクリプト
開発環境
Ant
/Burp
/Eclipse
/Fiddler
/gcc
/gdb
/Git
/g++
/JDK
/JMeter
/JUnit
/Teraterm
/ZAP
技術・仕様
Ajax
/CORBA
/Jakarta EE(旧称J2EE、Java EE)
/JNI
ライブラリ/Framework/CMS
bootstrap
/jQuery
/FuelPHP
/Lucene
/MyBatis
/Seasar2
/Spring
/Struts
/WordPress
Web API
Google Maps
ITインフラOSとミドルウェア
Linux
/Windows
/シェル
ActiveMQ
/Tomcat
/MariaDB
/MySQL
/Nagios
/Redis
/Solr
ITインフラセキュリティ
公開サーバーのセキュリティ
SI
ホームページの作り方
スポンサーリンク
関連サイト内検索ツール
zealseedsおよび関連サイト内のページが検索できます。
IPアドレス確認ツール
あなたのグローバルIPアドレスは以下です。
3.138.114.140
HTMLの表示色確認ツール
パスワード生成ツール
文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。
ここに生成されます。
スポンサーリンク
Copyright (C) 2007-2024 zealseeds. All Rights Reserved. Loarding…