2 回答
TA贡献2041条经验 获得超4个赞
事实上,类就是类型,类可以在其中保存其他类型的实例作为其定义的一部分。此类用户定义类型可以保存其他用户定义类型(类、枚举)或内置类型(int、boolean)。
鉴于您发布的示例构造函数,该特定类可能会像这样定义:
public class Book
{
private String title;
private int numberOfPages;
public Book(String title, int numberOfPages)
{
this.title = title;
this.numberOfPages = numberOfPages;
}
}
它包含用户定义类型String(作为标准库的一部分为您定义的类)和内置类型int。
在尝试获取已声明对象的内容时,您正在尝试打印它。但是,您的 print 语句正在将有关引用的信息book写入输出,而不是转到实际对象的位置(引用所指向的内容)并打印有关该信息的信息 - 没有办法自动执行此操作爪哇。
相反,您将需要重写内置java.lang.toString()方法,如 @bkbb 所暗示的那样,以便获取存储在对象中的实际信息。尝试打印时,您需要显式调用此方法
System.out.println(book.toString());
或者让它作为字符串操作的一部分自动调用
System.out.println("My book is: " + book);
TA贡献1772条经验 获得超5个赞
Java中的所有类都是直接或间接派生自java.lang.Object类。您可能还想了解有关 hashCode()、toString()、equals() 方法的更多信息。
添加回答
举报