gpt4 book ai didi

java - 如何在编译过程中捕获异常

转载 作者:行者123 更新时间:2023-12-01 20:52:40 24 4
gpt4 key购买 nike

您好,我是一名初学者程序员,我刚刚学习 Java 中的异常,并且我所学到的有关异常的知识是自学的,尚未在类里面介绍。我希望有一个简单的方法,它只接受 4 个特定的字符串作为输入,否则不起作用。我现在所拥有的看起来像这样:

public void setRating(String rating){
switch (rating){
case "G":
case "PG":
case "R":
case "NR": this.rating = rating;
break;
default: throw new IllegalArgumentException();
}
}

这工作正常,但如果我随后编写无效代码,例如:

setRating("invalid");

我的代码编译后不会发送错误消息,直到我尝试运行它。

我的问题是:有没有办法编写这个以便在编译时捕获它?在我看来,将来允许像这样编译无效代码可能会让使用我的代码的人感到头疼。不确定这是否是一个愚蠢的问题,甚至是我应该担心的事情,但任何见解将不胜感激!

最佳答案

使用 enum ,以便以编译器可以理解的方式定义允许的值。

public enum Rating {
G, PG, R, NR
}
<小时/>
public void setRating(Rating rating){
this.rating = rating;
}
<小时/>
setRating(Rating.G);

关于java - 如何在编译过程中捕获异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42964166/

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