正确解释技术术语

时间:2012-11-14 09:30:31

标签: java

这基本上不是编码问题,而是技术修正,如果你愿意的话。我不能在英语论坛上问这个因为他们不会理解所有的技术术语。

所以这就是我的代码。

1. public class ExamQ1a
2. {
3. public static void main(String[] args)
4. {
5. int x = 27;
6. int y = 5;
7. double z = x / y
8. System.out.println(x = x, y = y, z = z);
9. }
10. }

这是我被问到的问题

  

(i)当程序在BlueJ中编译时,出现以下错误消息   显示:';'预期和第7行的声明突出显示。   解释问题是什么以及如何解决它。

这是我给出的答案

  

i)问题是没有迹象表明声明的结束,   因此编译器不会将语句double z = x / y视为a   声明的结尾然后假设下面的句子是   声明的延续。事实上并非如此。修复   这个错误将是双z = x / y;

所以我想知道我是否正确使用了技术术语,tks

2 个答案:

答案 0 :(得分:1)

答案是合理的,当然也不是事实错误。有一个小的技术错误,因为Java没有“句子”。

但是,在一个理想的答案中,您可能会更精确地推断为什么编译器将此诊断为语法错误,特别是缺少分号。

解析器会看到以下符号序列:

double z = x / y System . out . println 

它将前两个符号解析为声明符,并将'='解析为初始化符的开头。然后它尝试解析表达式。一切顺利,直到看到'y'后跟'系统'。基本上,表达式中间的行中不能有两个标识符。此时合法的符号是中缀运算符符号,'(',a'['或''''。其他任何语法错误。

编译器编写者已经调用过,如果编译器在解析中的这一点看到一个意外的标识符符号,最可能的解释是程序员在结束时没有使用分号。该声明。在这种情况下,诊断是正确的 - 问题是缺少分号。

答案 1 :(得分:0)

除了我会使用following line而不是following sentence

之外,它看起来不错