java - float类toString方法

标签 java

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

static String toString(float num)  

调用对象时:-

String toString( )

最佳答案

这是两种不同的方法。

1.静态方法

public static String toString(float f)

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

静态调用静态方法


2.实例方法

public String toString()

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


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

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

关于java - float类toString方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38539210/

相关文章:

java - 验证电子邮件后如何开始新 Activity (firebase)

java - groovy.swing.factory.BindProxyFactory 在哪里?

java - 如何自定义 Spinner 使其向顶部打开?

java - 如何使选项菜单出现在屏幕底部?

java - LDAP Java 属性 maxpwdAge 返回 -864000000000

java - 使用 Play Framework 在页面中显示选项列表

java - 单击按钮时应用程序崩溃

Java 泛型方法不能调用另一个具有更宽松约束的泛型方法并返回其值

java - Hibernate无法创建表: org. hibernate.tool.schema.spi.CommandAcceptanceException:执行DDL时出错“创建表PSQLException

java - 根据多个参数处理许多条件的模式是什么?