メソッド (2)

前回のまとめ等

  • メソッド
    • 教科書P.74
    • メソッドとは?Cにおける関数と大体同じ。
    • メソッドは、クラスの中に定義される。
    • メソッドの定義には「public」をつける(今のところ、本講義では)
    • Cとの違い: メソッドは、同じクラスのフィールドを使うことができる。
    • trivia: 教科書に「return (x);とも書きます。」とあるが、今時、カッコはつけない(つけるべきではない)ので、当該箇所は無視すること。詳しくは「c言語 return カッコ」等で検索。
  • クラスの概念(教科書P.68)
    • フィールドとメソッドのことを「メンバー」という。
    • クラスはメンバーのみで構成される(メンバー以外の構成要素はない)。
    • クラスは設計図。利用するときはインスタンス(実体、オブジェクト)を作成する。
  • クラスの定義(書式)
    • クラス名は大文字から始める。
    • ファイル名は「クラス名.java」にする(基本的に1クラス1ファイル)。
    • フィールド2つ、メソッド1つ(引数が2つの場合)のクラスの例:

もっとメソッドを定義してみよう

Personクラスのポイント

  • 「/**」から始まるコメントはJavaDocというソースコード中にコードの説明を書いて後から簡単に参照する仕組み。IntelliJ IDEAではカーソルを合わせてF1キーを押すと参照できる。
  • setメソッド(23-29行目)
    • フィールド名と引数名が同じ場合は、どのように扱われるか?メソッド本体では、引数の方が優先されて使われる。メソッド本体でフィールドを参照したい場合は「this.フィールド名」とする(教科書P.110)。
    • メソッドを介してフィールドの値をセットしている。なぜわざわざメソッドを介してセットするのか考えてみよう。
  • getStatusメソッド(35-49行目): 特筆する点無し。
  • getBmiCategoryメソッド(55-64行目)
    • 同じクラス内のメソッドを呼び出すことができる(教科書P.76)
  • getBmiAfterDieting(55-64行目)
    • 引数有りのメソッド