gpt4 book ai didi

java - Java中的词法错误和语法错误之间的区别

转载 作者:行者123 更新时间:2023-12-02 11:10:55 24 4
gpt4 key购买 nike

我有以下Java类,需要查找可能的错误并区分词汇,语义和句法。我把错误放在了每一个的一边,但是我不确定它们之间有什么区别,以及我是否正确地确定了它们。

class Part {
private int number;
private String name;
private int quantity;

public Part(int number, String name, int quantity){
this.number = number;
this.name = name;
this.quantity = quantity;
}

public Part(int number, string name){ // Semantic Error
this(number, name, 0);
}

public Part(){
this(0, 'No Name'); // Lexical Error
}

public void decreaseQuantity(int amount){
quantity =- amount;
}

public int getName(){ //Semantic error
return name;
}

public int getnumber(){
return number;
}

public int getQuantity(){
return quanity; // Semantic error
} // Syntatic Error(this was a missing bracket)
}

最佳答案

您可以添加enum来区分它们:

public enum ErrorType {LEXICAL, SEMANTIC, SYNTACTIC}

并在您的类(class)中添加属性:
class Part {
private ErrorType errorType;
// other properties and methods}
}

关于java - Java中的词法错误和语法错误之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21536040/

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