Отличия:
1) Вы можете объявить несколько исключений брошенных метода в бросках ключевого слова, разделяя их в общих, например, throws IOException, ArrayIndexBoundException и т. д., в то время как вы можете бросить только один экземпляр исключения, используя ключевое слово throw, например. throw new IOException («не удается открыть соединение»).
2) ключевое слово throws дает гибкость метода при метании исключения, а не его обработке. с ключевым словом throw в методе подпишите метод, предлагающий его вызывающему пользователю подготовиться к исключению, объявленному в пункте throws, особенно в случае отмеченного исключения и обеспечить достаточную обработку их. С другой стороны, передайте управление передачей ключевого слова какому-либо вызову, бросив экземпляр Exception. бросить ключевое слово также может быть использован вместо возврата, как показано в примере ниже:
private static boolean shutdown() {
throw new UnsupportedOperationException("Not yet implemented");
}
как в рисунке отключения метод должен возвращать булево но имеющий бросок на месте компилятора понять, что этот метод всегда будет бросать исключение.
3) ключевое слово throw не может использоваться нигде в качестве исключения для метода исключения, тогда как ключевое слово throw может использоваться внутри метода или статического блока инициализатора, при условии достаточной обработки исключений, как показано в примере.
static{
try {
throw new Exception("Not able to initialized");
} catch (Exception ex) {
Logger.getLogger(ExceptionTest.class.getName()).log(Level.SEVERE, null, ex);
}
}
4) ключевое слово throw также может использоваться для разрыва оператора switch без использования ключевого слова break.
int number = 5;
switch(number){
case 1:
throw new RuntimeException("Exception number 1");
case 2:
throw new RuntimeException("Exception number 2");
}
Google это и вы получите тысячи ссылок –
вопрос, который вы ищете проверяется против непроверенных исключений – david99world
Довольно обширная и интересная дискуссия по этому вопросу [здесь] [1] [1]: http://stackoverflow.com/questions/77127/when-to-throw-an-exception –