MySQL Java JavaScript PHP Python HTML-CSS C-sharp

Clasa Console

Pentru lucrul cu consola în Java, este definită clasa Console, care se află în pachetul java.io. Aceasta nu primește direct input/output din consolă, ci folosește fluxurile deja existente System.in și System.out. Totuși, Console simplifică o serie de operațiuni legate de interacțiunea cu consola.

Pentru a obține un obiect de tip Console, trebuie să apelăm metoda statică System.console():

Console console = System.console();

Metodele principale ale clasei Console:

  • flush(): afișează pe consolă toate datele din buffer
  • format(): afișează pe consolă un șir de caractere folosind formatarea
  • printf(): afișează pe consolă un șir de caractere folosind formatarea (practic același lucru ca metoda format())
  • String readLine(): citește de la consolă șirul introdus de utilizator
  • char[] readPassword(): citește de la consolă șirul introdus de utilizator, însă caracterele nu sunt afișate pe ecran

Exemplu de utilizare a clasei Console:

import java.io.Console;

public class Program {

   public static void main(String[] args) {
       
       // obținem consola
       Console console = System.console();
       if(console != null){
           // citim date de la consolă
           String login = console.readLine("Introduceți login-ul:");
           char[] password = console.readPassword("Introduceți parola:");
           
           console.printf("Login introdus: %s \n", login);
           console.printf("Parola introdusă: %s \n", new String(password));
       }
   }
}

Este important de reținut că accesul la consolă poate fi obținut doar din consola propriu-zisă. Dacă rulăm programul, de exemplu, în Intellij IDEA sau alt mediu de dezvoltare, apelul System.console() va returna null.

De aceea, când lucrăm cu consola, este recomandat să verificăm dacă valoarea returnată nu este null. Dacă rulăm programul din linia de comandă, acesta va funcționa corect.

← Lecția anterioară Lecția următoare →