Chez oim, forum libreChez oim, forum libre

 



Répondre

Attention, il n'y a pas eu de réponse à ce sujet depuis au moins 21 jours.
À moins que vous ne soyez sûr de vouloir répondre, pensez éventuellement à créer un nouveau sujet.
Nom:
E-mail:
Titre:
Icône du message:

Cacher les smileys
Vérification:
Remplissez les détails de vérification anti robot (captcha).
Ecouter les lettres / Demander une autre image

Remplissez les détails de vérification anti robot (captcha).:
Le joli jouet violet de Paul est son préféré. Qu'elle est la couleur du jouet de Paul ?:

Raccourcis : tapez [ALT]+[S] pour poster ou [ALT]+[P] pour prévisualiser


Résumé de la discussion

Posté par: Songbird
« le: lundi 23 mai 2016, 01:32 »

 :gp:
La gestion des exceptions avec Dart

Tout comme Java, C++, Ruby, ou bien d'autres: Dart dispose d'un système de gestion des erreurs très précis.

Attention tout de même, Dart n'affiche pas automatiquement l'intégralité de la pile lorsque vous essayez de renvoyer le résultat de l'erreur sur la sortie standard, nous allons donc voir comment faire.

Pour lancer une erreur, il va falloir utiliser le mot-clé throw comme ceci:

Code

void displayUnsignedInteger(int i)
{
    if(i >= 0)
    {
        print(i);
    }
    else
        throw "i's value is negative.";
}


Lorsque vous passerez un entier négatif, le message d'erreur se lèvera.
Seulement, vous ne disposerez d'aucune indication quant à l'endroit où se trouve ce fameux message, et donc l'erreur; Voici comment procéder:

Code
void displayUnsignedInteger(int i)
{
    if(i >= 0)
    {
        print(i);
    }
    else
        throw "i's value is negative.";
}

try
{
    displayUnsignedInteger(-1);
}catch(e, stacktrace)
{
    print(stacktrace);
}


Vous obtiendrez alors un message de la sorte:
Code
i's value is negative.
    at dart.wrapException (<anonymous>:590:17)
    at dart.throwExpression (<anonymous>:603:15)
    at dart.main (<anonymous>:1422:11)
    at <anonymous>:1716:9
    at init.currentScript (<anonymous>:1700:7)
    at <anonymous>:1711:5
    at <anonymous>:1719:3
    at replaceJavaScript

Bien évidemment, si vous souhaitez personnaliser le message des exceptions tout en restant lisible, vous pouvez étendre la classe Exception sur l'une de vos classes personnelles pour récupérer le message destiné à un objet Exception.

Page générée en 0.108 secondes avec 19 requêtes.