未分類

メソッドの基本

投稿日:

「キャラクター」クラスを作成するときには、キャラクターに関するさまざまな「機能」を、メソッドというしくみでまとめることができます。

メソッドは、フィールドとともにクラスのメンバと呼ばれます。

下記のブロックの中に「モノの機能」をまとめるのです。

「戻り値」や「引数」という耳慣れない用語が使われていますね。これらは、後で説明します。ここでは、おおまかなイメージだけを眺めておくことにしましょう。

メソッドにはいくつかの文をまとめて記述します。これを

メソッドを定義するといいます。

たとえば、次のようなコードがメソッドの定義です。これは「キャラクターの情報を出力する」という機能をまとめたメソッドとなっています。

メソッドを呼び出す

先ほどのshow()メソッドを呼び出すには、次のように記述してください。

Character chara1;    オブジェクトを作成する

chara1 = new Character(); オブジェクトを作成する

chara1.show();      メソッドを呼び出す

main()メソッド内で呼び出すには、オブジェクトをさす変数名にピリオド(.)をつけ、メソッド名と()を記述します。

すると先ほど定義したメソッドの処理がまとめて行えるようになります。

main()メソッド内でCharacterクラスのオブジェクトのshow()メソッドを呼び出しています。この部分が処理されると画面にキャラクターの属性と体力が表示されます。main()メソッドでもう一度show()メソッドを呼び出しているので、再びshow()メソッドの処理が行われます。つまり、

  1. メソッドを呼び出す部分の処理が行われると、
  2. メソッド内部にうつって処理が行われる
  3. メソッド内の処理が終わると、呼び出し元に戻って続きを処理する

フィールドにアクセスする方法

Characterクラスの外にあるmain()メソッドの中で、フィールドを記述したときは、chara1にピリオドをつけて、アクセスしています。(20,21行目)

一方、Characterクラスの内側では、フィールドに何もつけずにアクセスしています。(9,10行目)

これは、クラスの外ではそのフィールドが

変数chara1のさすオブジェクトのフィールド、であることを示さなければならないためです。

これに対して、クラスの中で扱っているフィールドとは、

「その時処理されているオブジェクト自身」のフィールドという意味になっています。

なお、「オブジェクト自身」を表すことを強調して、this.という指定をつけることができます。

System.out.println(“キャラクターの属性は” + this.zokusei + “です。”);

メソッドにアクセスする方法

メソッドもフィールドと同じようにクラスの外では、オブジェクトをさす変数名をつけて、呼び出していました。どのオブジェクトであるのかを特定するためです。

なお、メソッドの呼び出しは、メソッドの定義と同じクラス内でも行うことができます。

CharacterクラスにはshowCharacter()メソッドを定義しました。そして、同じクラスのshow()メソッドを呼び出しています。この時、メソッド名だけを単独で記述しています。

また、メソッドもクラス内では、this.をつけて呼び出すことができます。

16行目  show();→this.show();

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

サンプルイメージ

練習問題

練習問題  HelloWorld.java 以下のプログラムの空欄を埋めて実行結果のように表示させてください。 練習問題  ChangeXY.java 下のプログラムの空欄を埋めてアイテムAとアイテム …

サンプルイメージ

練習問題(インターフェイス)

     練習11-1 下記のコードの実行結果がどう出力されるかを答えてください。 練習11-2 Shape.java 図形を表すインターフェイスShapeを作成してください。このインターフェイスでは …

サンプルイメージ

日付クラス

        Dateクラスは日時を取得するときに使用します。「import java.util.Date」のインポート文が必要です。 次に日付のフォーマットを設定するには、SimpleDateFo …

サンプルイメージ

練習問題(for文)

練習6-1 Hello1.java 次の図のように「こんにちは」を 10回表示してください。                    実行結果       練習6-2 Hello2.java 下記のプロ …

Android studio 実機でテストする

            Android端末でアプリを実行するには、「開発者向けオプション」の設定と、USBケーブルでのパソコンとAndroid端末の接続が必要になります。 Android端末での「開発 …