@throws
, как вы написали, является аннотацией Scala , которая аннотирует метод и явно объявляет, что этот метод может вызвать исключение объявленного типа (или подкласса).Аннотации являются метаинформацией о декларации.Как и в Java, аннотация принадлежит непосредственно перед объявлением метода.Вы можете прочитать немного больше об аннотациях Scala здесь:
http://www.scala -lang.org / node / 106
Теперь об исключениях: нетПроверенное исключение в Scala, в отличие от Java, поэтому аннотацию @throws
можно рассматривать как документацию, тогда как в Java это требуется, если компилятор определит, что вы можете выдать исключение, которое не является RuntimeException
в теле метода.
Наконец: если вы хотите создать исключение в Scala, напишите throw new SlickException
.