Apologies for this silly question, but while I was learning Java classes, I tried the following
javap -c java.lang.System | grep -i out
public static final java.io.PrintStream out;
javap java.io.PrintStream | grep print
public void print (boolean);
public void print (char);
public void print (int);
public void print (long);
public void print (float);
public void print (double);
public void print (char []);
public void print (java.lang.String);
public void print (java.lang.Object);
public void println ();
public void println (boolean);
public void println (char);
public void println (int);
public void println (long);
public void println (float);
public void println (double);
public void println (char []);
public void println (java.lang.String);
public void println (java.lang.Object);
public java.io.PrintStream printf (java.lang.String, java.lang.Object ...);
public java.io.PrintStream printf (java.util.Locale, java.lang.String, java.lang.Object ...);
And I tried to check if I can import java.io.PrintStream
and use print()
or println()
as is, instead System.out.println()
.
import java.io.PrintStream;
println('a');
And it turned out with a compilation error saying
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The method print (char) is undefined for the type array
at array.main (array.java:16)
Why can not I use println()
, as it was after import java.io.PrintStream
?
source
share