前提・実現したいこと
Dogクラスを利用するプログラムで、
Dogクラス生成部分をDogクラス配列を使用して書き換えたいのですが、
文字化けを起こしてしまいました。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
こちらのクラス生成部分をクラス配列を使用し書き換えたいです.
java
1public class main { 2 3 /**メインメソッド <BR> 4 * @param args 5 * @return void (なし) 6 */ 7 8 9 public static void main(String[] args) { 10 11 //パッケージ「model」のクラス「Dog」を使用し、インスタンス作成 12 model.Dog dog1 = new model.Dog(); 13 14 dog1.setName("未入力"); 15 dog1.setKind("未入力"); 16 17 //未入力の情報を出力する 18 System.out.println(dog1.getName() +"の情報:種類は" + dog1.getName()); 19 20 21 //Dogクラスのインスタンスを生成(右側)し、dog2クラスに代入する 22 model.Dog dog2 = new model.Dog(); 23 24 25 dog2.setName("ポチ"); 26 dog2.setKind("柴犬"); 27 28 //ポチの名前と犬種を出力 29 System.out.println(dog2.getName() + "の情報:種類は" + dog2.getKind()); 30 31 32//未入力の情報:種類は未入力 33//ポチの情報:種類は柴犬 34 } 35 36} 37
java
1package model; 2 3public class Dog { 4 /*名前・種類*/ 5 6 //インスタンスフィールド(情報を格納する変数)にnameとkindをセット 7 private String name; 8 private String kind; 9 10 11 //コンストラクタの定義 12 public Dog(){ 13 } 14 15 //コンストラクタでフィールドをセットする 16 public Dog(String name,String kind){ 17 18 } 19 20 21 //Nameフィールドのゲッターを定義 22 public String getName() { 23 return name; 24 } 25 26 //Nameフィールドのセッターを定義 27 public void setName(String name) { 28 this.name = name; 29 } 30 31 //Kindフィールドのゲッターを定義 32 public String getKind() { 33 return kind; 34 } 35 36 //Kindフィールドのセッターを定義 37 public void setKind(String kind) { 38 this.kind = kind; 39 } 40 41 42 43 } 44 45
試したこと
文字がバグってしまいます…。
java
1public static void main(String[] args) { 2 3 4 5 //Dogクラス配列を使用する 6 model.Dog[] dog1 = {new model.Dog("未入力", "未入力")}; 7 8 9 //未入力の情報を出力する 10 System.out.println(dog1 +"の情報:種類は" + dog1); 11 12 13 14 //Dogクラス配列を使用する 15 model.Dog[] dog2 = {new model.Dog("ポチ","柴犬")}; 16 17 18 //ポチの名前と犬種を出力 19 System.out.println(dog2 + "の情報:種類は" + dog2); 20 21 22/**実行結果 23[Lmodel.Dog;@7852e922の情報:種類は[Lmodel.Dog;@7852e922 24[Lmodel.Dog;@4e25154fの情報:種類は[Lmodel.Dog;@4e25154f 25*/ 26 } 27 28 29
文字がバグるとはどういうふうになるんでしょうか
詳しく説明しましょう