我将创建一个LogNode类,其中包含一个日志条目和一个指向下一个LogNode的链接。我是一个适用于所有日志条目类的日志条目。(我将有3个logEntry类)要在LogNode中保存这些不同类型的日志条目,我们将为日志条目创建一个接口。此接口称为Loggable,每种类型的日志条目都将实现此接口。
因此 LogNode将包含一个Loggable类型的字段来保存日志条目(我不完全理解为粗体)和一个LogNode类型的字段链接到日志中的下一个节点。
据我所知,我的LogNode类将有一个LogNode类型的字段链接到下一个Node。是,
LogNode nextLink; < -----我明白了
我不明白的是我需要一个Loggable类型的字段来保存日志条目?
所以如果这是我的LogNode类:
公共类LogNode {
LogNode nextLink;
Loggable logEntry; < - 如果这就是说它是如何工作的?
........}我认为我错了,但我的日志条目将是字符串,所以Loggable类型的字段如何保存字符串。所以这也意味着我将在Loggable界面中有一个String变量。我可能错了,因为我不完全理解这一点。我非常感谢您的意见。感谢
答案 0 :(得分:1)
嗯:)你做的是一个链表。
所以基本上链接列表的工作原理如下:
[] - > [] - > [] - > ...
但是当它变得有趣时,就是当你在[]中放入一些内容时,这就是你所做的:
[logEntry] - > [logEntry] - > [logEntry] - > ......
你可以在[]中基本上放置你想要的东西,把信息放在链表的每个节点里面。并且您选择将Loggable对象放入其中:)
你也谈论String。它也适用于String。
[String] - > [String] - > [String] - > ......
但是,如果你需要Java中的String链表,我建议:
LinkedList<String> thisObject = new LinkedList<String>();
答案 1 :(得分:0)
如果您的日志条目应包含String
,则应该以此方式创建Loggable
接口。
public interface Loggable {
public String logEntry();
}
现在您可以按照提到的方式创建链接列表。您的方法和理解在该部分是正确的。
public class LogNode {
/**
* Log entry provider object. (implements Loggable).
*/
private Loggable loggable;
/**
* Link for next node.
*/
private LogNode next;
// Constructors, getters etc...
}
希望这有帮助。