précédent | suivant | table des matières |
|
La classe System contient des attributs et méthodes très utiles. Cette classe ne peut pas être intanciée.
1 Entrées/sorties standard
static PrintStream err |
La sortie standard erreur. |
static InputStream in |
L'entrée standard. |
static PrintStream out |
La sortie standard. |
Ces entrées/sorties peuvent être redirigées :
static void setErr(PrintStream err) |
Change la sortie standard erreur. |
static void setIn(InputStream in) |
Change l'entrée standard. |
static void setOut(PrintStream out) |
Change la sortie standard. |
Exemple : rediriger out et err vers des JTextArea d'une interface
class Redirige implements Runnable{ JTextArea jTOut = new JTextArea(); JTextArea jTErr = new JTextArea(); boolean fin; PipedInputStream pipeOutI = null; PipedInputStream pipeErrI = null; public void redirection(){ try { PipedOutputStream pipeOut = new PipedOutputStream(); pipeOutI = new PipedInputStream(pipeOut); PrintStream pso = new PrintStream(pipeOut); PipedOutputStream pipeErr = new PipedOutputStream(); pipeErrI = new PipedInputStream(pipeErr); PrintStream pse = new PrintStream(pipeErr); System.setOut(pso); System.setErr(pse); fin = false; tOut = new Thread(Redirige); tOut.start(); tErr = new Thread(Redirige); tErr.start(); } catch (IOException e) { } } |
public synchronized void run() { try { if (fin) return; while (Thread.currentThread() == tOut) { try { this.wait(5); } catch (InterruptedException ie) { } if (pipeOutI.available() != 0) { int c = pipeOutI.read(); jTOut.append("" + (char) c); } if (fin) return; } while (Thread.currentThread() == tErr) { try { this.wait(5); } catch (InterruptedException ie) { } if (pipeErrI.available() != 0) { int c = pipeErrI.read(); jTErr.append("" + (char) c); } if (fin) return; } } catch (Exception e) { } } } |
2 Environnement et propriétés
Les variables d'nvironnement sont les variable utilisateur plus les variables système. Les propriétés sont liées à l'exécution de l'application : awt.toolkit, file.encoding, file.separator, java.class.path, java.home, os.arch, os.name, user.dir, user.language ...
static Map<String,String> getenv() |
Retourne une vue des variables d'environnement du système. |
static String getenv(String nom) |
Retourne la valeur de la variable d'environnement de nom nom. |
static Properties getProperties() |
Retourne l'ensemble des propriétés du système. |
static String getProperty(String nom) |
Retourne la valeur de la propriété de nom nom. |
static String getProperty(String key, String def) |
|
static void setProperties(Properties props) |
Change l'ensemble des propriétés. |
static String setProperty(String cle, String valeur) |
Change la valeur de la propriété cle. |
static String clearProperty(String cle) |
Supprime la cle cle et retourne sa valeur, ou null si la clé n'existait pas. |
3 Divers
static void arraycopy(Object src, int srcPos, Object dest, int destPos, int l) |
Copie un tableau depuis la source src et l'indice srcPos vers la destination dest à partir de l'indice destPos et sur une longueur l. |
static long currentTimeMillis() |
Retourne l'heure courante en millisecondes. |
static long nanoTime() |
Retourne l'heure actuelle, en nanosecondes. |
static void exit(int status) |
Arrête l'exécution de la machine virtuelle Java avec l'état status. |
static void gc() |
Lance l'exécution du garbage Collector qui va récupérer l'espace mémoire qui n'est plus utilisé par le programme : l'espace occupé par les objets qui ne sont plus référencés. |
static int identityHashCode(Object x) |
Retourne le hashcode délivré par la classe Object, même si l'objet redéfinit sa propre méthode de hashCode. |
static void load(String filename) |
Charge un fichier de code exécutable ou une dll. Equivalent à Runtime.getRuntime().load(name)
|
static void loadLibrary(String libname) |
Charge une librairie. Equivalent à Runtime.getRuntime().loadLibrary(name) |