Java 无法对非静态方法问题进行静态引用
我已经在类Person中重写了方法toString(),但我不能在我的主方法中使用它-“无法从类型对象对非静态方法toString()进行静态引用” 我怎样才能解决这个问题 使用:Java 无法对非静态方法问题进行静态引用,java,Java,我已经在类Person中重写了方法toString(),但我不能在我的主方法中使用它-“无法从类型对象对非静态方法toString()进行静态引用” 我怎样才能解决这个问题 使用: System.out.println(person.toString()); toString方法是一种非静态方法,这意味着它与特定实例相关 当你想调用它时,你需要在一个特定的人实例上调用它。你试图从一个静态上下文调用一个非静态方法(在本例中是你的主方法)。要调用Person对象的toString方法,需要执行Pe
System.out.println(person.toString());
toString
方法是一种非静态方法,这意味着它与特定实例相关
当你想调用它时,你需要在一个特定的
人
实例上调用它。你试图从一个静态上下文调用一个非静态方法(在本例中是你的主方法)。要调用Person
对象的toString
方法,需要执行Person.toString()
有时,把我们的代码想象成英语有助于我们理解它。这句话的英文是“把人转换成字符串”。让我们把它转换成代码
Person映射到我们创建的
Person
对象。“to a string”映射到toString()
方法。在Java中,对象和动词(方法)由句点分隔。上面英文的完整代码是person.toString()
你不能那样调用这个方法,你应该使用referece“person”
toString(..)
是Person
类的成员方法。这意味着您可以通过类的对象实例调用它。因此,您需要在System.out.println(..)中调用person.toString()
而不是toString()
代码>omg。。。。对于这个愚蠢的问题,我很抱歉…在谷歌上粘贴你问题的标题,然后阅读数百个返回页面中的一个。不需要调用toString()
此处是的,你是对的,但我之所以这样做是因为我不喜欢混淆用户2976091
System.out.println(person.toString());
System.out.println(person.toString());