Float类toString方法

时间:2016-07-23 07:15:01

标签: java

为什么toString()方法存在于任何类型的包装类中(也是Number类的子类)在将number作为参数传递时是静态的,但在调用对象时却不是这样? 就像Float类一样: - 传递号码时

static String toString(float num)  

在对象上调用时: -

String toString( )

1 个答案:

答案 0 :(得分:2)

它们是两种不同的方法。

1.静态方法

public static String toString(float f)

是一个静态方法,因此与类相关联,而不与实例相关联。 你不需要一个实例来调用它。 因此静态方法通过例如Integer.toString(f)

进行静态调用


2.实例方法

public String toString()

是一个实例方法,因此与类的实例相关联,而不与类本身相关联。 你必须有一个实例来调用它。

要回答您的问题,假设我们希望能够使用实例方法来执行静态toString(myLong)方法的操作。 通过这种方式,我们可以做到:myLong.toString(myLong)

要实现它,原始静态方法应该以两种方式提供:一种使用static修饰符,另一种不使用static修饰符(实例方法),而使用实例方法的那种方法永远不会使用其实例的状态做toString()
那么,我们为什么要为它创建实例方法呢?