Hầu như không có gì:
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)
}
}
}
Phần còn lại đến từ Java, trong đó bao gồm khá nhiều tất cả các góc. Nó đặt ra câu hỏi về những phương pháp Scala này ném vào các nền tảng khác, phải không?
Nguồn
2011-10-12 19:00:59
Điều đó đưa ra một ý tưởng khá công bằng về việc dễ dàng ném các ngoại lệ tùy chỉnh của riêng bạn và thậm chí là các lỗi nếu nó hoạt động với Java. Chỉ cần tạo một lớp một dòng trong một đối tượng và sử dụng khi cần thiết. cuối cùng lớp MyException (arg: String) mở rộng RuntimeException() hoặc như được thấy trong FatalError với java.lang.RuntimeException (msg). Đẹp một Sobral. –