什么是Scala标准例外?

时间:2011-10-12 18:24:39

标签: exception scala notimplementedexception

Scala中常见的标准异常是什么? 我特别感兴趣的是.Net的NotImplementedException等效名称是什么?

更新:关于NotImplementedException的答案似乎是 org.apache.commons.lang.NotImplementedException

3 个答案:

答案 0 :(得分:10)

几乎没有:

package scala {
  final class MatchError(obj: Any) extends RuntimeException
  final class UninitializedError extends RuntimeException("uninitialized value")
  final case class UninitializedFieldError (msg: String) extends RuntimeException(msg)

  package util.regex {
    class SyntaxError(e: String) extends RuntimeException(e)
  }

  package xml {

    class BrokenException() extends java.lang.Exception
    case class MalformedAttributeException(msg: String) extends RuntimeException(msg)

    package dtd {
      case class ValidationException(e: String) extends Exception(e)
    }

    package include {
      class CircularIncludeException(message: String) extends XIncludeException
      class UnavailableResourceException(message: String) extends XIncludeException(message)
      class XIncludeException(message: String) extends Exception(message)
    }

    package parsing {
      case class FatalError(msg: String) extends java.lang.RuntimeException(msg)
    }
  }
}

其余部分来自Java,几乎涉及所有角落。它引出了这些Scala方法在其他平台上抛出的问题,不是吗?

答案 1 :(得分:2)

目前正在考虑将NotImplementedException用于Scala 2.10。请参阅此thread

答案 2 :(得分:2)

您可以使用Java中已存在的任何默认值。 Scala并没有真正为Java中的标准异常添加任何内容。