前回のまとめ等
- メソッド
- 教科書P.74
- メソッドとは?Cにおける関数と大体同じ。
- メソッドは、クラスの中に定義される。
- メソッドの定義には「public」をつける(今のところ、本講義では)
- Cとの違い: メソッドは、同じクラスのフィールドを使うことができる。
- trivia: 教科書に「return (x);とも書きます。」とあるが、今時、カッコはつけない(つけるべきではない)ので、当該箇所は無視すること。詳しくは「c言語 return カッコ」等で検索。
- クラスの概念(教科書P.68)
- フィールドとメソッドのことを「メンバー」という。
- クラスはメンバーのみで構成される(メンバー以外の構成要素はない)。
- クラスは設計図。利用するときはインスタンス(実体、オブジェクト)を作成する。
- クラスの定義(書式)
- クラス名は大文字から始める。
- ファイル名は「クラス名.java」にする(基本的に1クラス1ファイル)。
- フィールド2つ、メソッド1つ(引数が2つの場合)のクラスの例:
12345678910
package パッケージ名; public class クラス名 { public フィールドの型 フィールド名1; public フィールドの型 フィールド名2; public 戻り値の型 メソッド名1(引数1の型 引数1の名前, 引数2の型 引数2の名前) { (メソッドの本体) return 戻り値; }}
もっとメソッドを定義してみよう
- 教科書P.74
- メソッドとは?Cにおける関数と大体同じ。
- メソッドは、クラスの中に定義される。
- メソッドの定義には「public」をつける(今のところ、本講義では)
- Cとの違い: メソッドは、同じクラスのフィールドを使うことができる。
- trivia: 教科書に「return (x);とも書きます。」とあるが、今時、カッコはつけない(つけるべきではない)ので、当該箇所は無視すること。詳しくは「c言語 return カッコ」等で検索。
- フィールドとメソッドのことを「メンバー」という。
- クラスはメンバーのみで構成される(メンバー以外の構成要素はない)。
- クラスは設計図。利用するときはインスタンス(実体、オブジェクト)を作成する。
- クラス名は大文字から始める。
- ファイル名は「クラス名.java」にする(基本的に1クラス1ファイル)。
- フィールド2つ、メソッド1つ(引数が2つの場合)のクラスの例:
12345678910package パッケージ名;public class クラス名 {public フィールドの型 フィールド名1;public フィールドの型 フィールド名2;public 戻り値の型 メソッド名1(引数1の型 引数1の名前, 引数2の型 引数2の名前) {(メソッドの本体)return 戻り値;}}
Personクラスのポイント
- 「/**」から始まるコメントはJavaDocというソースコード中にコードの説明を書いて後から簡単に参照する仕組み。IntelliJ IDEAではカーソルを合わせてF1キーを押すと参照できる。
- setメソッド(23-29行目)
- フィールド名と引数名が同じ場合は、どのように扱われるか?メソッド本体では、引数の方が優先されて使われる。メソッド本体でフィールドを参照したい場合は「this.フィールド名」とする(教科書P.110)。
- メソッドを介してフィールドの値をセットしている。なぜわざわざメソッドを介してセットするのか考えてみよう。
- getStatusメソッド(35-49行目): 特筆する点無し。
- getBmiCategoryメソッド(55-64行目)
- 同じクラス内のメソッドを呼び出すことができる(教科書P.76)
- getBmiAfterDieting(55-64行目)
- 引数有りのメソッド