Java Wrapper类的'toString'方法是重载的还是一个抽象方法,它在不同的类中有不同的定义?

Siv*_*ani 0 java overloading class wrapper

在下面的程序中,我试图使用Wrapper类的静态'toString'方法将Numbers转换为字符串.

class NumberToStringConversion
{
  public NumberToStringConversion()
 {
  String I=Integer.toSring(i);
  String F=Float.toString(f);
  String D=Double.toString(d);
  String L=Long.toString(l);
 }
}
Run Code Online (Sandbox Code Playgroud)

这里,Integer,Float,Double和Long是Wrapper类,它们分别包含各种Primitive数据类型.看起来该toString方法存在于所有上述包装类中.这是否意味着该toString方法过载?或者它是abstract一种在不同类别中具有不同定义的方法?

Joh*_*ica 5

toString()你调用方法是静态方法.继承不适用于静态方法.每个包装类都有静态和非静态toString()方法.静态的是彼此无关的.非静态的覆盖Object.toString().

Integer例如,有三种toString()方法:

String toString();  // overrides Object.toString()
static String toString(int i);
static String toString(int i, int radix);
Run Code Online (Sandbox Code Playgroud)