クラスの基礎
クラスを定義する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
package net.teachingprogramming.lecture03; public class Person { /** 名前 */ String name; /** 体重[kg] */ double weight; /** 身長[m] */ double height; /** * 自己紹介するメソッド */ void selfIntroduction() { System.out.println("私の名前は" + name + "です。"); System.out.println("BMIは" + bmi() + "です"); } /** * BMIを計算するメソッド * @return BMI */ double bmi() { double x = weight / (height * height); return x; } } |
- パッケージ宣言(1行目)で、クラスが所属するパッケージを指定する[教科書P.24]。
- クラスには、メンバ(member)によって構成されている。メンバには値を保存するためのフィールド(field)と、処理をするためのメソッド(method)の2つがある[教科書P.114]。
- メンバは、お互いに利用可能。上記の例では、メソッドbmiでフィールドwidthとheightを利用して計算している。
クラスを使う(インスタンスを作って使う)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
package net.teachingprogramming.lecture03; public class Main { public static void main(String[] args) { net.teachingprogramming.lecture03.Person person1 = new net.teachingprogramming.lecture03.Person(); person1.name = "ドラえもん"; person1.weight = 129.3; person1.height = 1.293; person1.selfIntroduction(); Person person2 = new Person(); person2.name = "ドラミ"; person2.weight = 91.0; person2.height = 1.0; person2.selfIntroduction(); } } |
- クラスは「設計図」に位置づけられるので、そのままでは使えない。設計図から「実体」をつくってから利用する。実体のことをインスタンス(instance)という。クラスからインスタンスを作ることを「インスタンス化」という。
- インスタンスの作成にはnew演算子を使う[教科書P.115]。
- メンバを使うには、「.」を使う。
- 同じパッケージのクラスあるいは、import宣言したクラスはパッケージを書かなくても使える(5行目と11行目を比較)。