0
公共抽象类 ASTNode3 扩展 ASTNode {

    ASTNode child1;
    ASTNode child2;
    ASTNode child3;

    公共 ASTNode3(ASTNode c1,ASTNode c2,ASTNode c3){
    孩子1 = c1;
    孩子2 = c2;
    孩子3 = c3;
    }

    公共 ASTNode getChild1() {
    返回孩子1;
    }

    公共 ASTNode getChild2() {
    返回孩子2;
    }

    公共 ASTNode getChild3() {
    返回孩子3;
    }
}

公共类 IRProc 扩展 ASTNode3 {

    公共 IRProc(字符串 p,向量 v,IRCmdSeq cmds){
    超级(p,v,cmds);
    }

我扩展了 ASTNode,如下所示,但是当我尝试传入 Vector 和 String 作为参数时,我不断收到错误。如何在不影响节点的情况下传入这些值。我正在考虑创建一个处理该类型的中间类,但我不知道如何去做。

4

1 回答 1

2

在行

super(p,v,cmds);

您尝试ASTNode3(ASTNode c1, ASTNode c2, ASTNode c3)使用参数调用构造函数String p, Vector v, IRCmdSeq cmds。这不匹配。

您必须创建ASTNode要调用的实例super()。你如何做到这一点取决于你想做什么。或许你应该解释一下什么样的信息pv并且cmds实际包含。

于 2009-10-31T20:52:09.223 回答