現在、javaのインスタンスについて勉強しているものです。
MainクラスとSwordクラスとHeroクラスのファイルを実行したところ、下記のように、null値を参照してしまっているとエラーがでてしまいました。
なぜこのようなエラーがでてしまうのかわかりません。
これの原因がわかる方大変恐れ入りますが、ご教授いただけないでしょうか?
Exception in thread "main" java.lang.NullPointerException at Main.main(Main.java from InputFileObject:17)
java
1public class Main { 2 3 public static void main(String[] args) { 4 Hero h1 = new Hero(); 5 h1.hp = 100; 6 Hero h2; 7 h2 = h1; 8 h2.hp = 200; 9 System.out.println(h1.hp); 10 System.out.println(h2.hp); 11 Sword sword = new Sword(); 12 sword.name = "炎の剣"; 13 sword.damage = 180; 14 h1.name = "マリオ"; 15 System.out.println(h1.sword.damage); 16 } 17}
java
1public class Sword { 2 String name; 3 int damage; 4} 5
java
1public class Hero { 2 String name; 3 int hp; 4 Sword sword; 5 void attack(){ 6 System.out.println(this.name + "は攻撃をした。"); 7 System.out.println("敵に5ポイントのダメージを与えた。"); 8 9 } 10 11} 12
回答1件
あなたの回答
tips
プレビュー