IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Classe terminal ?


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Mars 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Classe terminal ?
    Bonjour à tous,

    Je m'interroge à propos de la classe terminal.
    Dans le cadre de mes études j'ai des cours de Java, et nous utilisons la classe Terminal pour lire et écrire.
    En voulant travailler un peu à la maison un exercice, je me retrouve vite face à un petit soucis : je n'ai pas le fameux fichier Terminal.class qui est si important en cours ! (Qui n'est pas à ma portée avant une semaine... Forcément :p)

    Un petit coup de Google me permet de trouver ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    import java.io.*;
    public class Terminal{ 
    static BufferedReader in =
    new BufferedReader(new InputStreamReader(System.in));
    public static String lireString() // Lire un String
    {
    String tmp="";
    char C='\0';
    try {
    tmp = in.readLine();
    }
    catch (IOException e)
    {
    exceptionHandler(e);
    }
    return tmp;
    } // fin de lireString()
    public static int lireInt() // Lire un entier
    {
    int x=0;
    try {
    x=Integer.parseInt(lireString());
    }
    catch (NumberFormatException e) {
    exceptionHandler(e);
    }	
    return x ;
    }
    public static boolean lireBoolean() // Lire un entier
    {
    boolean b = true;
    try {
    b = Boolean.valueOf(lireString()).booleanValue();
    }
    catch (NumberFormatException e) {
    exceptionHandler(e);
    }	
    return b;
    }
    public static double lireDouble() // Lire un double
    {
    double x=0.0;
    try {
    x=Double.valueOf(lireString()).doubleValue();
    }
    catch (NumberFormatException e) {
    exceptionHandler(e);
    }	
    return x ;
    }
    public static char lireChar() // Lire un caractere
    {
    String tmp=lireString();
    if (tmp.length()==0)
    return '\n';
    else 
    {
    return tmp.charAt(0);
    }
    }
    public static void ecrireString(String s){ // Afficher un String
    try{
    System.out.print(s);
    } catch (Exception ex){
    exceptionHandler(ex);
    }
    }
    public static void ecrireStringln(String s) // Afficher un String
    {
    ecrireString(s);
    sautDeLigne();
    } // fin de ecrireStringln()
    public static void ecrireInt(int i) // Afficher un entier
    {
    ecrireString(""+i);
    }
    public static void ecrireIntln(int i) // Afficher un entier
    {
    ecrireString(""+i);
    sautDeLigne();
    }
    public static void ecrireBoolean(boolean b){
    ecrireString(""+b);
    }
    public static void ecrireBooleanln(boolean b){
    ecrireString(""+b);
    sautDeLigne();
    }
    public static void ecrireDouble(double d) // Afficher un double
    {
    ecrireString(""+d);
    }
    public static void ecrireDoubleln(double d) // Afficher un double
    {
    ecrireDouble(d);
    sautDeLigne();
    }
    public static void ecrireChar(char c) // Afficher un caractere
    {
    ecrireString(""+c);
    } 
    public static void ecrireCharln(char c) // Afficher un caractere
    {
    ecrireChar(c);
    sautDeLigne();
    }
    public static void sautDeLigne(){
    try{
    System.out.println();
    }catch(Exception ex){
    exceptionHandler(ex);
    }
    }
    protected static void exceptionHandler(Exception ex){
    TerminalException err = new TerminalException(ex);
    throw err;
    }
    public static void ecrireException(Throwable ex){
    ecrireString(ex.toString());
    ex.printStackTrace(System.err);
    }
    } 
    class TerminalException extends RuntimeException{
    Exception ex;
    TerminalException(Exception e){
    ex = e;
    }
    }
    J'enregistre le tout dans Terminal.class pensant être tranquille. Je le place dans le même dossier que mon Test.java que je compile à grands coups de terminal (je suis sous Mac), mais j'ai toujours une erreur impliquant la classe Terminal.

    Je retourne sur Google, et trouve un message d'un internaute expliquant que cette classe avait été créée par des profs afin de simplifier les choses.

    Alors, première question : est-ce que cette classe existe vraiment "uniquement" à but pédagogique ? Si oui, qu'y a-t-il de si compliqué de caché derrière tout ça ?

    Et deuxième question : comment puis-je faire fonctionner mes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Terminal.ecrireString("");
    Terminal.lireString("");
    et autres ? Ou alors quelle serait l'alternative ?

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Cette classe est spécifique à ton Prof. Pour manipuler la console en java, on utilise soit la classe Console, soit Scanner, soit directement System.in et System.out.

    Donc si vous n'avez pas cette classe Terminal (dont j'ai jamais entendu parler), ben faites simplement sans, vous apprendrer à faire du code propre en utilise les api standards de java

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Mars 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Je voiiiis...

    Je me dirige de ce pas vers les tutos en ligne alors.

    Merci bien !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récursivité avec la class Terminal
    Par ginos dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 12/05/2008, 22h38
  2. exception java class terminal
    Par ginos dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 12/05/2008, 21h00
  3. Programme Java avec la classe Terminal
    Par ginos dans le forum Langage
    Réponses: 6
    Dernier message: 05/05/2008, 16h07
  4. Héritage avec classe Terminal
    Par ginos dans le forum Débuter avec Java
    Réponses: 9
    Dernier message: 26/04/2008, 14h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo