小编Ber*_*ila的帖子

用ANTLR“需要概念”解析Java代码

我正在尝试使用 ANTLR 编译程序,我使用 Java 编程语言作为目标,问题的核心是开发 Intent Regornizer 以纠正错误并改进源代码,如果源代码不符合语法。在关于 ANTLR 的教程和书籍中,我看到了如何编译一个简单的代码,假设我已经制作了词法分析器和解析器以及像这样的源代码:

int main(){
     int a,b;
     c=20;
}
Run Code Online (Sandbox Code Playgroud)

程序如何检测变量“C”之前未知已声明的错误?

我尝试按照有关如何使用 ANTLR 进行编译的说明来应用它,但是 ANTLR 生成器的代码被认为是有效的,因为它符合表达式的语法规则。但实际上变量 c 是未知的。

或者如何制作一个可以在其中实现面向对象概念的语法?我已经尝试使用 ANTLR 语法,但结果仍然没有解释 OOP 的概念。

public class Hello {
}

public class HelloTwo {
    Hello hl = new HelloWrong();
}
Run Code Online (Sandbox Code Playgroud)

如果我编译代码,结果是有效的,因为按照 Grammar.but 看那个类 HelloWrong 真的没有。它也与在我的第一个problems 上写入前一个变量有关。

对不起我的英语。我希望你能帮助我的问题。谢谢你

java oop antlr

4
推荐指数
1
解决办法
1117
查看次数

标签 统计

antlr ×1

java ×1

oop ×1