【发布时间】:2013-10-23 22:23:50
【问题描述】:
我正在努力解决 Java 的问题。如何使用 giveCode() 方法返回对象的整数值。这是我们的讲师预先编写的代码,我们必须使用它来为对象返回一个整数值,在为哈希表创建哈希值时使用它。
HashCode.java
// Interface for HashCode. Has only one method declaration
public interface HashCode {
// For an input object, computes and returns its HashCode as an integer
public int giveCode(Object o);
}
StringHashCode.java(我创建了这个类,因为我们应该在这个类中实现 HashCode 类)
public abstract class StringHashCode implements HashCode{
}
我在我的 main 中尝试过这样的事情,只是为了简单地返回代码值,所以我可以看到它是如何工作的,但似乎没有任何工作:
System.out.println(new StringHashCode.giveCode(example_object));
或者
System.out.println(new StringHashCode.giveCode(example_object.hashCode()));
或者
System.out.print(HashCode.giveCode(example_object));
我对 Java 很陌生,但是我对其他 OOP 语言有很多经验,但我似乎无法理解这个问题,我觉得这可能是一些愚蠢的事情,但我不能猜一猜。
【问题讨论】:
-
不工作是什么意思?您的期望和实际结果是什么?
-
你不能创建抽象类的实例。你需要一个具体的类。您的示例甚至无法编译。我建议你写一些代码先编译。
-
您缺少两个非常重要的字符,称为括号:
new StringHashCode()