【发布时间】:2014-05-06 02:54:38
【问题描述】:
我是 Java 编程新手,我正在关注 Udemy 的指南。我正在通过类进行数据操作,这是一个简单的名称格式化程序。将预定义的字符串(名称的一部分)插入到类中以对其进行格式化。
这个程序使用了两个类:Name.java 和 NameTest.java(驱动文件)
Name.java:
package javaProject;
public class Name {
private String first;
private String middle;
private String last;
public Name(String f, String m, String l){
first = f;
middle = m;
last = l;
}
public Name(String f, String l){
first = f;
middle = "";
last = l;
}
public Name(String f){
first = f;
middle = "";
last = "";
}
public Name(){
first = "";
middle = "";
last = "";
}
///
public String displayName(){
return first + " " + middle + " " + last;
}
public static void main(String[] args){
}
}
NameTest.java:
package javaProject;
public class NameTest{
public static void main(String[] args){
Name myName = new Name("Damon", "myMiddleName", "myLastName");
System.out.println("My Name: " + myName.toString());
}
}
输出:
My Name: javaProject.Name@35afe17b
知道为什么我在指定输出应该是一个字符串后得到这个吗?我不确定如何解决这个问题,因为我还是 Java 新手。
【问题讨论】:
-
你需要定义你自己的toString(),通常你的IDE可以为你做这件事,因为它相当乏味。为什么 Java 不为您执行此操作可能是历史原因。它为您提供类名和标识 hashCode。
标签: java console output tostring println