Analyse des différences :
(Tutoriel recommandé : Tutoriel d'introduction à Java)
lancements : Utilisé pour déclarer qu'une méthode peut générer Toutes les exceptions seront téléchargées sans aucun traitement et seront envoyées à quiconque appelle.
est utilisé après la déclaration de la méthode, suivi du nom de la classe d'exception
peut être suivi de plusieurs noms de classe d'exception, séparés par des virgules
signifie lancer une exception, qui sera gérée par l'appelant de la méthode
lancer signifie qu'il existe une possibilité d'exception, mais cela n'arrive pas nécessairement. Ces exceptions
throw : sont utilisées pour lancer un type d'exception spécifique.
utilisé dans le corps de la méthode, suivi du nom de l'objet d'exception
ne peut lancer qu'un seul nom d'objet d'exception
signifie lancer une exception, qui est gérée par les instructions dans le corps de la méthode
throw signifie lancer une exception, et l'exécution de throw doit lever une sorte d'exception
Présentons-les séparément :
throws déclare des exceptions après la méthode. En fait, cela signifie que vous ne voulez rien faire avec l'exception et que vous en parlez aux autres. exceptions possibles et laissez-les s’en occuper.
Exemple de code :
package com.xinkaipu.Exception; class Math{ public int div(int i,int j) throws Exception{ int t=i/j; return t; } } public class ThrowsDemo { public static void main(String args[]) throws Exception{ Math m=new Math(); } }
(Tutoriel vidéo recommandé : Tutoriel vidéo Java)
lancer : gérer vous-même une exception ou intercepter l'exception vous-même. try...catch code block lève une exception (lève une exception).
Implémentation du code :
package com.xinkaipu.Exception; public class TestThrow { public static void main(String[] args) { try { //调用带throws声明的方法,必须显式捕获该异常 //否则,必须在main方法中再次声明抛出 throwChecked(-3); } catch (Exception e) { System.out.println(e.getMessage()); } //调用抛出Runtime异常的方法既可以显式捕获该异常, //也可不理会该异常 throwRuntime(3); } public static void throwChecked(int a)throws Exception { if (a > 0) { //自行抛出Exception异常 //该代码必须处于try块里,或处于带throws声明的方法中 throw new Exception("a的值大于0,不符合要求"); } } public static void throwRuntime(int a) { if (a > 0) { //自行抛出RuntimeException异常,既可以显式捕获该异常 //也可完全不理会该异常,把该异常交给该方法调用者处理 throw new RuntimeException("a的值大于0,不符合要求"); } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!