gpt4 book ai didi

scala - 抛出自定义异常

转载 作者:行者123 更新时间:2023-12-03 06:34:49 25 4
gpt4 key购买 nike

我正在尝试抛出自定义异常。

自定义异常类的实现是:

case class customException(smth:String)  extends Exception

在我的代码中,我包装了一段代码,我确信它会抛出异常,并使用 try/catch 抛出我的 customException。

try{
val stateCapitals = Map(
"Alabama" -> "Montgomery",
"Alaska" -> "Juneau",
"Wyoming" -> "Cheyenne")

println("Alabama: " + stateCapitals.get("AlabamaA").get)
}
catch{
case x:Exception=>throw classOf[CustomException]
}

我收到一个编译错误:

        found   : java.lang.Class[CustomException]
[INFO] required: java.lang.Throwable
[INFO] case x:Exception=>throw classOf[CustomException]

在这种情况下我如何抛出自己的自定义异常?稍后我检查抛出的异常是否属于类型[x]以执行特定操作。

最佳答案

您没有抛出异常,而是抛出异常的类(只需阅读编译器错误消息...)。您必须抛出一个异常实例。

case x:Exception => throw new CustomException("whatever")

关于scala - 抛出自定义异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6716719/

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