Я видел в классе System
, что объект out
(типа PrintStream
) инициализируется значением null
. Как мы можем вызвать такой метод, как System.out.prinln("");
? В классе System переменная out инициализируется следующим образом:
package java.lang;
public final class System {
public final static PrintStream out = nullPrintStream();
private static PrintStream nullPrintStream() throws NullPointerException {
if (currentTimeMillis() > 0) {
return null;
}
throw new NullPointerException();
}
}
Как показано выше, переменная кода out
инициализируется нулем, и эта переменная является окончательной, поэтому ее нельзя инициализировать дальше, тогда как мы можем использовать переменную «out».