Java Can';t在子类中创建重载构造函数
我定义了一个子类,希望有两个具有不同参数的构造函数。看起来像这样Java Can';t在子类中创建重载构造函数,java,class,constructor,overloading,Java,Class,Constructor,Overloading,我定义了一个子类,希望有两个具有不同参数的构造函数。看起来像这样 public class GraphNode extends Entity{ protected String id; public GraphNode(PVector pos, String id) { super(pos,0); this.id = id; } public GraphNode(PVector pos, String id, List<GraphEd
public class GraphNode extends Entity{
protected String id;
public GraphNode(PVector pos, String id) {
super(pos,0);
this.id = id;
}
public GraphNode(PVector pos, String id, List<GraphEdge>) {
this(pos, id);
//do something else
}
}
public class GraphNode extends Entity{
protected String id;
public GraphNode(PVector pos, String id) {
super(pos,0);
this.id = id;
}
public GraphNode(PVector pos, String id, List<GraphEdge> list) {
this(pos, id);
//do something else
}
}
公共类GraphNode扩展实体{
受保护的字符串id;
公共图形节点(PVector位置,字符串id){
超级(pos,0);
this.id=id;
}
公共图形节点(PVector位置、字符串id、列表){
这(pos,id);
//做点别的
}
}
编译器一直告诉我:
类型中的重复方法GraphNode(PVector,String)
石墨节点
我做错了什么?应该是这样的
public class GraphNode extends Entity{
protected String id;
public GraphNode(PVector pos, String id) {
super(pos,0);
this.id = id;
}
public GraphNode(PVector pos, String id, List<GraphEdge>) {
this(pos, id);
//do something else
}
}
public class GraphNode extends Entity{
protected String id;
public GraphNode(PVector pos, String id) {
super(pos,0);
this.id = id;
}
public GraphNode(PVector pos, String id, List<GraphEdge> list) {
this(pos, id);
//do something else
}
}
公共类GraphNode扩展实体{
受保护的字符串id;
公共图形节点(PVector位置,字符串id){
超级(pos,0);
this.id=id;
}
公共图形节点(PVector位置、字符串id、列表){
这(pos,id);
//做点别的
}
}
您忘记为第三个参数指定变量名:
public GraphNode(PVector pos, String id, List<GraphEdge> list)
公共图形节点(PVector位置、字符串id、列表)
这看起来不像完整的故事?并为列表边指定变量名如果我很难发现您的方法和op的方法之间的差异。看起来就像那些游戏“找出7个不同点”:)我真的应该休息一下,谢谢。