Probleme de comprehension

Résolu
finaltv971 Messages postés 28 Statut Membre -  
KX Messages postés 19031 Statut Modérateur -
Bonjour a tous,
depuis déjà 2 a 3 mois je galère a apprendre et comprendre la syntaxe du java mais cependant de puis quelque jour je bloc sur certains mots clé "throws,throw et le thread" .Quelqu'un pourrait m'aider a comprendre comment ils fonctionnent? ,car le principe de la gestion des exception (try{} et catch{}) je l'ai compris mais là je bloc depuis un moment.



2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
Exemple (purement pédagogique)

public static boolean isPositive(int n)
{
    try
    {
        failIfNegative(n);
        return true;
    }
    catch (Exception e)
    {
        return false;
    }
    finally
    {
        System.out.println(n);
    }
}

public static void failIfNegative(int n) throws Exception
{
    if (n<0)
    {
        System.out.println("negative");
        throw new Exception();
    }
    else
    {
        System.out.println("positive");
    }
}

Si tu donnes un entier positif le code va suivre les numéros de lignes suivantes :
2, 3, 4, 5 - 19, 20, 25, 26, 27, 29, 29 - 6, 13, 14, 15

Si tu donnes un entier négatif le code va suivre les numéros de lignes suivantes :
2, 3, 4, 5 - 19, 20, 21, 22, 23 - 9, 10, 13, 14, 15

thread n'a absolument rien à voir, ce n'est même pas un mot clé du langage...
0
finaltv971 Messages postés 28 Statut Membre 1
 
OK je croit avoir compris. Je me suis relis vue que je m'étais tromper quand j'ai dis que thread était un mot clé .
Mais un thread c'est quoi?
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Actuellement toutes les actions qui se font dans ton programme se font à la suite des autres.
Avec des threads il est possible d'avoir plusieurs actions qui se déroulent "en même temps".

Un exemple : tu veux demander à plusieurs personnes leur nom, dans ce cas chaque thread fera la demande et attendra la réponse. Le programme principal lui, démarrera tous les threads, et attendra qu'ils aient tous finis.

Sans les threads tu serais obligé d'attendre que la première t'es répondu avant de pouvoir poser la question à la deuxième, etc.

Remarque : comme je le disais, ça n'a absolument rien à voir avec les exceptions...
0