###質問内容
Integerクラスだと、インスタンスを作ってSystem.out.println(インスタンス名)で
インスタンス作成時の引数で渡した値が出力されますが
同じようなことを別クラスでやろうとしても、インスタンス作成時の引数が出力されません。
下記コードで
System.out.println(インスタンス名)でインスタンス作成時の引数で渡した値を出力するには
どうしたら良いでしょうか。
該当のソースコード
java
1 2package java_practice; 3 4public class Practice_Class { 5public static void main(String[] args) { 6 7 //Animalクラスのインスタンス 8 Animal sample = new Animal("犬"); 9 System.out.println(sample); 10 11 //Integerクラスのインスタンス 12 Integer sample2 = new Integer(123); 13 System.out.println(sample2); 14 15 } 16} 17 18 //Animalクラスの作成 19 class Animal{ 20 String name; 21 22 //コンストラクタ 23 public Animal(String name) { 24 this.name = name; 25 } 26 } 27 28
###出力
java_practice.Animal@70dea4e 123
実際に出力したいのは「犬」です。
sample.nameを指定すると、当たり前ですが「犬」が出力されますが
sampleだけだと上記の出力になります。
Integerクラスではインスタンス名.valueと指定しなくても
インスタンス作成時の引数が出力されるのが不思議です。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/07 05:06