Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';t在子类中创建重载构造函数_Java_Class_Constructor_Overloading - Fatal编程技术网

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个不同点”:)我真的应该休息一下,谢谢。