初心者です。
パーフェクトJavaを読んでいると
クラス内のtoStringメソッドの独自実装について書いてありましたので、
ふと「メインメソッド内でtoString()の独自実装は可能だろうか」と思いたち、
試してみることにしました。
Java
1 class Main{ 2 static int sum=0; 3 public static String toString(){ 4 return "The sum of numbers is "+sum; 5 } 6 public static void main(String[] args){ 7 int[] numbers={0,1,2,3,4,5}; 8 for(int number:numbers){ 9 sum+=number; 10 } 11 System.out.println(sum); 12 } 13}
→Main.java:3: error: toString() in Main cannot override toString() in Object
「メインクラス内のtoString()はオブジェクト内のtoString()を
オーバーライドできません」というエラーが出ました。
これは、静的クラスIntegerのtoString()メソッドを
System.out.println内で暗黙に呼び出しているので、メインクラス内からでは
オーバーライドできないという解釈で宜しいでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/03/24 03:36
2018/03/24 04:05
2018/03/24 12:37