在另一个 class(扩展)错误中包含 java class
including a java class in another class (extends) error
我写了两个文件(Node.java 和 priorityQueue.java),它们位于 同一目录 中,我正在尝试在其中使用 Node priorityQueue 使用“扩展”。
但是,在我的 priorityQueue.java 文件中出现“节点”的任何地方,我都会收到“错误:找不到符号”。
Node.java:
public class Node {
private int priority;
private String name;
public Node(int priority, String name) {
this.priority = priority;
this.name = name;
}
// some methods ...
}
priorityQueue.java:
import java.util.ArrayList;
public class priorityQueue extends Node {
public ArrayList<Node> pq = new ArrayList<Node>();
// some methods ...
public static void main(String[] args) {
priorityQueue p = new priorityQueue();
Node a = new Node(10, "a");
p.enqueue(a);
System.out.println(p.dequeue().getName());
}
}
这是第一条错误信息:
priorityQueue.java:4: error: cannot find symbol
public ArrayList<Node> pq = new ArrayList<Node>();
^
我更习惯于使用导入的 c++ 和 c,但有人告诉我,只要文件位于同一目录中,extends 就可以在不导入任何内容的情况下工作。我错过了什么?
我正在使用 windows 10、java 14.0.1,并使用 notepad++ 作为 IDE。
你想使用基于节点的优先级队列吗?如果如我所料,你不应该扩展 class 节点,但你将通过优先级队列 class
创建节点的对象
我写了两个文件(Node.java 和 priorityQueue.java),它们位于 同一目录 中,我正在尝试在其中使用 Node priorityQueue 使用“扩展”。
但是,在我的 priorityQueue.java 文件中出现“节点”的任何地方,我都会收到“错误:找不到符号”。
Node.java:
public class Node {
private int priority;
private String name;
public Node(int priority, String name) {
this.priority = priority;
this.name = name;
}
// some methods ...
}
priorityQueue.java:
import java.util.ArrayList;
public class priorityQueue extends Node {
public ArrayList<Node> pq = new ArrayList<Node>();
// some methods ...
public static void main(String[] args) {
priorityQueue p = new priorityQueue();
Node a = new Node(10, "a");
p.enqueue(a);
System.out.println(p.dequeue().getName());
}
}
这是第一条错误信息:
priorityQueue.java:4: error: cannot find symbol
public ArrayList<Node> pq = new ArrayList<Node>();
^
我更习惯于使用导入的 c++ 和 c,但有人告诉我,只要文件位于同一目录中,extends 就可以在不导入任何内容的情况下工作。我错过了什么?
我正在使用 windows 10、java 14.0.1,并使用 notepad++ 作为 IDE。
你想使用基于节点的优先级队列吗?如果如我所料,你不应该扩展 class 节点,但你将通过优先级队列 class
创建节点的对象