Java Console ialah kelas yang terdapat dalam pakej java.io yang diperkenalkan dalam JDK 1.6 untuk melancarkan peranti konsol yang membaca entri berasaskan aksara. Kelas ini digunakan untuk membaca input pengguna dan menulisnya kembali ke konsol. Ini diutamakan berbanding Pembaca dan Penulis buffer kerana 2 sebab di bawah:-
Sintaks:
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
public final class Console extends Object implements Flushable
Kelas konsol digunakan untuk membaca input daripada konsol atau menulis output kepadanya. Memandangkan kelas Console tidak mempunyai pembina dan digunakan menggunakan kelas Sistem, itu menjadikannya lebih mudah untuk digunakan. Selain itu, kelas Console membaca input daripada konsol dengan cara yang lebih selamat kerana ia membantu pengguna mengambil input seperti bukti kelayakan keselamatan supaya ia tidak dipaparkan pada skrin. Oleh itu kelas Console sangat berguna sekiranya seseorang itu perlu bekerja dengan kelayakan keselamatan.
Di bawah ialah kaedah Java Console:
1. public PrintWriterwriter(): Kaedah ini digunakan untuk mendapatkan contoh unik PrintWriter yang dikaitkan dengan objek konsol yang sedang berjalan. Tiada parameter diperlukan dalam kaedah ini.
2. public void flush(): Kelas Console menyediakan kaedah ini untuk mengepam tika konsol. Ia juga berhati-hati untuk mencetak output dengan segera jika terdapat dalam penimbal. Tiada parameter diperlukan untuk memanggil fungsi ini.
3. public Reader reader(): Kaedah ini memberikan contoh unik kelas Reader yang dikaitkan dengan konsol semasa. Contoh kelas Pembaca diberikan sebagai input untuk membaca aksara daripada konsol.
4. format Konsol awam( StringformatVar, Objek … umur): Kaedah ini membantu menghantar rentetan berformat yang diberikan pada strim output konsol menggunakan rentetan format dan argumen yang ditentukan.
Parameter:
Console instance dihantar sebagai output oleh fungsi ini dengan rentetan terformat dicetak. Kaedah ini membuang IllegalFormatException sekiranya format yang dinyatakan tidak mempunyai sintaks yang betul.
5. public Console printf( StringformatVar, Object … agrs): Kaedah ini membantu mencetak rentetan yang diformatkan dengan argumen format yang ditentukan dihantar pada skrin konsol.
Console instance dihantar sebagai output oleh fungsi ini dengan rentetan terformat dicetak. Kaedah ini membuang IllegalFormatException sekiranya format yang dinyatakan tidak mempunyai sintaks yang betul.
6. public String readLine( StringformatVar, Object … umur): Kaedah ini digunakan untuk memaparkan gesaan berformat ke skrin dan membaca input baris tunggal daripada pengguna.
Barisan tunggal yang telah dibaca oleh gesaan daripada konsol tidak termasuk sebarang aksara penghujung baris dikembalikan melalui kaedah. Sekiranya tiada apa-apa yang dimasukkan, maka null dikembalikan dengan kaedah ini. Kaedah ini membuang IllegalFormatException sekiranya format yang ditentukan tidak mempunyai sintaks yang betul. Selain itu, IOError berlaku untuk sebarang ralat I/O.
7. public String readLine(): Kaedah ini digunakan untuk membaca input baris tunggal daripada pengguna daripada konsol, tidak termasuk sebarang aksara melarikan diri jika diluluskan.
Rentetan ini dikembalikan melalui kaedah atau batal sekiranya garis akhir dicapai. Tiada parameter diperlukan dalam kaedah ini kerana tiada gesaan akan dipaparkan. Semasa menggunakan kaedah ini, IOERROR berlaku untuk sebarang ralat I/O.
8. public char[] readPassword( String formatVar, Object … umur): Kaedah ini digunakan untuk memaparkan gesaan berformat pada skrin yang membaca aksara menggunakan mod selamat supaya ia tidak dipaparkan pada skrin semasa kita menaip.
Character Array containing the password is sent as output by this function or null in case the end-of-line is reached. The returned character array excludes line-termination characters. This method throws IllegalFormatException in case the format specified does not have the correct syntax. This method IOERROR occurs for any I/O errors.
9. public char[] readPassword(): This method is used to read password string from the console in a secure mode without displaying any prompt. There are no parameters that need to be passed. The string of characters containing the password is returned excluding the line-termination characters or null in case the end-of-line is reached.
Code:
import java.io.Console; public class ConsolePrac { public static void main(String[] args) { Console consoleObj = null; try { consoleObj = System.console(); if (consoleObj != null) { String person = consoleObj.readLine("Please enter your Name: "); System.out.println("Welcome " + person); System.out.println("Please check the below result"); String fmt = "%2$8s %1$10s %3$3s%n"; consoleObj.format(fmt, "Name", "RollNo", "MArks"); consoleObj.format(fmt, "-----", "-----", "-----"); consoleObj.format(fmt, "Raj", "1212", "75"); consoleObj.printf(fmt, "Meeta", "1213", "67"); consoleObj.printf(fmt, "Sanjana", "1215", "89"); consoleObj.printf(fmt, "Pawan", "1214", "80"); } consoleObj.flush(); } catch(Exception ex) { ex.printStackTrace(); } } }
Output:
Code:
import java.io.Console import java.util.Scanner; import java.io.PrintWriter; public class ConsolePrac { public static void main(String[] args) { Console consoleObj = null; PrintWriter PWObj = null; String fmt1 = "%1$6s %2$5s %3$10s%n"; String fmt2 = "%1$8s %2$10s %3$5s %4$5s %5$10s%n"; Scanner scanObj = null; try { consoleObj = System.console(); if (consoleObj != null) { System.out.print("Please enter your Name: "); scanObj = new Scanner(consoleObj.reader()); String person = scanObj.next(); String empID = consoleObj.readLine(fmt1, "Please","enter","EmployeeID: "); char[] pwd = consoleObj.readPassword("Please enter your Password: "); char[] ans1 = consoleObj.readPassword(fmt2,"Security","question- ","Enter","your","Mothers'name: "); PWObj = consoleObj.writer(); PWObj.println("Welcome "+person +" "+empID); } } catch(Exception ex) { ex.printStackTrace(); } } }
Output:
Note: The format string’s arguments must be the same as the String to be displayed. Please see below 2 scenarios:Case 1: The arguments are more than specified in the format string.
String fmt= "%1$30s %2$10s" String empID = consoleObj.readLine(fmt1, "Please","enter","your","EmployeeID: ");
In the above case, only the first 2 strings will be printed, and others are ignored.
Case 2: In case the arguments specified are less than a missing argument exception is thrown.
String fmt= "%1$30s %2$10s" ,"%3$10s%n" String empID = consoleObj.readLine(fmt1, "Please","enter”);
Console class is one of the great utility introduced with JDK 1.6 that helps to read the input from a console instance in a secure manner. It also provides methods to write output to the console screen.
Atas ialah kandungan terperinci Konsol Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!