サイズ: 1862
コメント:
|
サイズ: 2317
コメント:
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 9: | 行 9: |
---- | |
行 49: | 行 50: |
この場合は「インスタンスaに対してshow()を行う」と読めます。<<BR>> メソッドshow()の中ではprintlnが行われています。<<BR>> |
この場合は「インスタンスaに対してshow()を行う」と読めます。 メソッドshow()の中ではprintlnが行われています。 |
行 52: | 行 55: |
---- | |
行 53: | 行 57: |
{{{#!java void add1() { rank = rank + 1; } boolean efuda() { return (rank > 10); } int sa(Card c) { return (rank - c.rank); } public static void main(String[] args) { Card a, b; a = new Card("ハート", 12); b = new Card("スペード", 3); a.add1(); a.show(); if (a.efuda()) System.out.println( "絵札" ); b.show(); if (b.efuda()) System.out.println( "絵札" ); System.out.println( "差は" + a.sa(b) ); } } }}} |
{{{#java void add1() { rank = rank + 1; } public static void main(String[] args) { Card a; a = new Card("ハート", 12); a.add1(); a.show(); } }}} メッソドadd1はrankの値を1増やします。 この例では、aの値は「ハートの13」になります。 ---- 値を返すメソッドを記述することもできます。 {{{#!java boolean efuda() { return (rank > 10); } public static void main(String[] args) { Card a; a = new Card("ハート", 12); if (a.efuda()) System.out.println( "aは絵札" ); } }}} ---- 引数をもつメソッドの例です。 {{{#!java int sa(Card c) { return (rank - c.rank); } public static void main(String[] args) { Card a, b; a = new Card("ハート", 12); b = new Card("スペード", 3); System.out.println( "差は" + a.sa(b) ); } } }}} |
メソッド
クラスのもつ機能を定義したものをメソッドといいます。
メソッドはオブジェクトに対する(オブジェクトを利用した)処理を記述したものとも言えます。
Cardクラスを例として説明します。
1 public class Card 2 { 3 String suit; 4 int rank; 5 6 Card(String s, int r) 7 { 8 suit = s; 9 rank = r; 10 } 11 12 void show() 13 { 14 System.out.println( suit + " " + rank ); 15 } 16 17 public static void main(String[] args) 18 { 19 Card a, b; 20 21 a = new Card("ハート", 12); 22 b = new Card("スペード", 3); 23 a.show(); 24 b.show(); 25 } 26 }
このクラスのメソッドとして show が定義されています。 使い方は
1 a.show();
のように、インスタンスとメソッド名をピリオドでつなぎ括弧を書きます。
void(値を返さない)型のメソッドの場合
- インスタンスxxxに対してメソッドyyy()を行う
のように解釈すればよい。
この場合は「インスタンスaに対してshow()を行う」と読めます。
メソッドshow()の中ではprintlnが行われています。
ここで参照されているsuitとrankは、呼び出しで指定されたインスタンスaの変数が使われます。
- {{{#java
- void add1() {
- rank = rank + 1;
- Card a; a = new Card("ハート", 12); a.add1(); a.show();
- void add1() {
メッソドadd1はrankの値を1増やします。
この例では、aの値は「ハートの13」になります。
値を返すメソッドを記述することもできます。
引数をもつメソッドの例です。