gpt4 book ai didi

java - 关于JAVA编译器的阶段

转载 作者:行者123 更新时间:2023-11-30 06:59:53 25 4
gpt4 key购买 nike

我有一个代码:

package pack;
public class St
{
public static void main(String args[])
{
Int y=9;
display(23,1);
}
}
class Animals
{
void display(int a,int b)
{
System.out.println("I am Animal Class");
}
}

我想知道为什么编译器只在第 Int y=9 行显示错误,为什么它没有同时显示这两个错误,即,如果我更正 Intint,然后在 display(23,1) 中显示错误。我知道编译器是分阶段工作的,有人可以解释一下各个阶段及其工作吗,如果你能借助一个例子来解释这些阶段,那么我将非常感激。我想知道,如果一个阶段发生错误,那么接下来的连续阶段是否会被检查?

最佳答案

在我上学的时候做了一个自定义编译器,我发现一些编译器是从上到下工作的,这就是为什么我们首先得到最上面的错误。在我的编译器类(class)中,我们了解到编译器的工作方式是一次将所有内容都放入一个字符中。它可以检测到什么时候是 Int y= 9;当它开始拾取 (i-n-t) 部分时。它知道或期望接下来的几个字符(如“y”)是后跟数字或分号的变量。如果您想了解更多信息,我建议您阅读或查找特定的编译器以及它们的工作原理。他们如何解析 .java 文件或解析 .cpp 文件。希望对你有帮助

关于java - 关于JAVA编译器的阶段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31115831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com