Création et utilisation d'exceptions personnalisées Java
Les exceptions personnalisées sont utilisées pour créer des messages d'erreur et une logique de gestion. Tout d’abord, vous devez hériter d’Exception ou RuntimeException pour créer une classe d’exception personnalisée. Vous pouvez ensuite remplacer la méthode getMessage() pour définir le message d'exception. Les exceptions sont levées à l'aide du mot-clé throw. Utilisez des blocs try-catch pour gérer les exceptions personnalisées. Cet article fournit un cas pratique pour analyser une entrée entière et lancer une exception InvalidInputException personnalisée lorsque l’entrée n’est pas un entier.
Création et utilisation d'exceptions personnalisées Java
Introduction
Les exceptions personnalisées permettent aux développeurs de créer des messages d'erreur personnalisés et une logique de gestion des exceptions. Dans cet article, nous présenterons comment créer et utiliser des exceptions personnalisées Java et fournirons un exemple pratique.
Créer une exception personnalisée
Pour créer une classe d'exception personnalisée, vous devez étendre la classe Exception
ou RuntimeException
: Exception
或RuntimeException
类:
public class MyCustomException extends Exception { // ... }
设置异常消息
可以覆盖getMessage()
方法以自定义异常消息:
@Override public String getMessage() { return "Custom exception message"; }
抛出异常
可以通过使用throw
关键字抛出自定义异常:
throw new MyCustomException("Custom exception message");
使用自定义异常
可以使用try-catch
块来处理自定义异常:
try { // 代码可能引发 MyCustomException } catch (MyCustomException e) { // 处理 MyCustomException }
实战案例
假设我们有一个方法来处理用户输入的整数,并希望在输入不为整数时抛出自定义异常。我们可以使用以下自定义异常:
public class InvalidInputException extends Exception { public InvalidInputException(String message) { super(message); } }
在处理整数输入的方法中,我们可以抛出InvalidInputException
:
public int parseInteger(String input) { try { return Integer.parseInt(input); } catch (NumberFormatException e) { throw new InvalidInputException("Invalid input: " + input); } }
在主方法中,我们调用parseInteger()
方法并处理InvalidInputException
public static void main(String[] args) { try { int number = parseInteger("abc"); } catch (InvalidInputException e) { System.out.println(e.getMessage()); } }
Définir le message d'exception
🎜 🎜Oui Remplacez la méthodegetMessage()
pour personnaliser le message d'exception : 🎜Invalid input: abc🎜🎜 lancer des exceptions 🎜🎜🎜 Des exceptions personnalisées peuvent être levées en utilisant le mot-clé
throw
: 🎜rrreee 🎜 🎜Utilisation d'exceptions personnalisées🎜🎜🎜Vous pouvez utiliser le bloc try-catch
pour gérer les exceptions personnalisées : 🎜rrreee🎜🎜Cas pratique🎜🎜🎜Supposons que nous ayons une méthode pour gérer un entier saisi par l'utilisateur et je souhaite lancer une exception personnalisée lorsque l'entrée n'est pas un entier. Nous pouvons utiliser l'exception personnalisée suivante : 🎜rrreee🎜Dans la méthode qui gère la saisie d'entiers, nous pouvons lancer InvalidInputException
: 🎜rrreee🎜Dans la méthode principale, nous appelons parseInteger()
méthode code> et handle InvalidInputException
: 🎜rrreee🎜Sortie : 🎜rrreeeCe 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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

CheckkSearchSettings like "MatchEnteRireCellContents" et "MatchCase" ByExpandingOptionsInFindanDreplace, garantissant "lookin" issettominuesand »dans" TOCORRECTSCOPE; 2.LOORHFORHIDDENCHARACTER

Préparez-vous en application par rapport à Mavenorgradletobuildajarorwarfile, externalisationConfiguration.2.ChoOSEADPLOYENDIRONMENT: Runonbaremetal / vmwithjava-jarandsystemd, deploywarontomcat, compeneriserisewithdocker, orusecloudplatformslikelise.

L'utilisation de SLF4J combinée avec la journalisation ou le log4j2 est le moyen recommandé de configurer les journaux dans les applications Java. Il introduit des bibliothèques API et implémentation en ajoutant des dépendances Maven correspondantes; 2. Obtenez l'enregistreur via le loggerfactory de SLF4J dans le code et écrivez le code journal découplé et efficace à l'aide de méthodes de journalisation paramétrée; 3. Définir le format de sortie du journal, le niveau, la cible (console, le fichier) et le contrôle du journal du package via Logback.xml ou les fichiers de configuration log4j2.xml; 4. Activer éventuellement la fonction de balayage de fichiers de configuration pour atteindre un ajustement dynamique du niveau de journal, et Springboot peut également être géré via des points de terminaison de l'actionneur; 5. Suivez les meilleures pratiques, y compris

CASTORENablesxml-to-javaObjectMappingViadefaultConverionsOrexplicitMappingFiles; 1) DefinejavaclasseswithGetters / seters; 2) useUnmarShallertOConvertXmltoObjects; 3)

Dans JavaScript, la méthode la plus courante pour ajouter des éléments au début d'un tableau est d'utiliser la méthode Unsich (); 1. En utilisant unsith () modifiera directement le tableau d'origine, vous pouvez ajouter un ou plusieurs éléments pour retourner la nouvelle longueur du tableau ajouté; 2. Si vous ne souhaitez pas modifier le tableau d'origine, il est recommandé d'utiliser l'opérateur d'extension (tel que [Newelement, ... Arr]) pour créer un nouveau tableau; 3. Vous pouvez également utiliser la méthode CONCAT () pour combiner le nouveau tableau d'éléments avec le numéro d'origine, renvoyez le nouveau tableau sans modifier le tableau d'origine; En résumé, utilisez Unsich () lors de la modification du tableau d'origine et recommandez l'opérateur d'extension lorsque vous gardez le tableau d'origine inchangé.

GOTYPICAL OFFERSBETTERRUNTIMEPERFORMANCE AVEC LA MAINTRÉE DE PUTHROUGHTANDLOWERLATENCE, ENTERTFORI / O-HEAVYSERVICES, DUETOITSLIGHT LONDEGOROUTINESANDERFICENTSCHEDULL

ToworkwithJSONinJava,useathird-partylibrarylikeJackson,Gson,orJSON-B,asJavalacksbuilt-insupport;2.Fordeserialization,mapJSONtoJavaobjectsusingObjectMapperinJacksonorGson.fromJson;3.Forserialization,convertJavaobjectstoJSONstringsviawriteValueAsString

Utilisez runtime.exec () pour exécuter des commandes externes, mais les tableaux de chaîne doivent être utilisés pour éviter les problèmes d'espace; 2. Il est recommandé d'utiliser ProcessBuilder car il est plus flexible et peut définir des variables d'environnement, des répertoires de travail et une syntaxe claire; 3. Vous devez lire STDOUT et STDERR en même temps et les flux d'entrée et de sortie de processus; 4. Évitez l'injection de commande et gérez correctement les exceptions et les fermetures de flux; 5. Faites attention à la dépendance à la plate-forme des commandes, et un nouveau code devrait donner la priorité à l'utilisation de ProcessBuilder pour garantir la sécurité et la maintenabilité.
