16. クラス
16. クラス
クラスの作成
lesson 038
class Lesson038 { public static void main(String args[]) { neko rena = new neko(); neko yuki = new neko(); neko mimi = new neko(); rena.name = "レナ"; rena.love = 186; yuki.name = "ユキ"; yuki.love = 549; mimi.name = "ミミ"; mimi.love = 325; System.out.println("名前\t\t好感度"); System.out.println(rena.name + "\t\t" + rena.love); System.out.println(yuki.name + "\t\t" + yuki.love); System.out.println(mimi.name + "\t\t" + mimi.love); } } class neko { String name; int love; }
実行結果
L:\>java Lesson038
名前 好感度
レナ 186
ユキ 549
ミミ 325
デフォルト値
lesson 039
class Lesson039 { public static void main(String args[]) { neko rena = new neko(); rena.nekoj = 726; rena.love += 300; System.out.println("名前\t好感度\t猫常識\t人常識"); System.out.println(rena.name + "\t" + rena.love + "\t" + rena.nekoj + "\t" + rena.hitoj); } } class neko { String name = "レナ"; int nekoj; int hitoj = 84; int love = 200; }
実行結果
L:\>java Lesson039
名前 好感度 猫常識 人常識
レナ 500 726 84
多重参照
lesson 040
class Lesson040 { public static void main(String args[]) { B objB = new B(); System.out.println(objB.objA.str); } } class A { String str = "Kitty on your lap"; } class B { A objA = new A(); }
実行結果
L:\>java Lesson040
Kitty on your lap
nullポインタ
lesson 041
class Lesson041 { public static void main(String args[]) { B objB = new B(); System.out.println(objB.objA.str); } } class A { String str = "Kitty on your lap"; } class B { A objA; }
実行結果
L:\>java Lesson041
Exception in thread "main" java.lang.NullPointerException
at Lesson041.main(lesson041.java:4)
nullポインタへの対処
lesson 042
class Lesson042 { public static void main(String args[]) { B objB = new B(); if (objB.objA == null) { System.out.println("nullを参照しました。インスタンス化します"); objB.objA = new A(); } System.out.println(objB.objA.str); } } class A { String str = "Kitty on your lap"; } class B { A objA; }
実行結果
L:\>java Lesson042
nullを参照しました。インスタンス化します
Kitty on your lap
オブジェクト型の配列
lesson 043
class Lesson043 { public static void main(String args[]) { Kitty obj[] = new Kitty[10]; for (int i = 0 ; i < 10 ; i++) { obj[i] = new Kitty(); obj[i].str = "Kitty " + i; } for (int i = 0 ; i < 10 ; i++) System.out.println(obj[i].str); } } class Kitty { String str; }
実行結果
L:\>java Lesson043
Kitty 0
Kitty 1
Kitty 2
Kitty 3
Kitty 4
Kitty 5
Kitty 6
Kitty 7
Kitty 8
Kitty 9