Здравствуйте . я изучаю Java и у меня возник вопрос по методу System.out.println()
а конкретнее что именно означает слово out в нём .
поковырявшись я нашел это -
public final class System {
public static final InputStream in;
public static final PrintStream out;
вот . там это работает .
но когда я пытаюсь создать свой класс с полем
public static final PrintStream out;
например
public final class MoyKlass{
public static final PrintStream out;
выдаёт ошибку = значение out должно быть инициализировано -
вопрос почему в классе System такое можно . а в моём классе нет ??
private static native void registerNatives(); static { registerNatives(); }
Полагаю registerNatives() и занимается инициализацией этих полей. Но так как метод нативный, его реализацию в .java файле не посмотришь.