System.out.println() в Java выводит переданный текст (или число, объект) на консоль и добавляет перевод строки, то есть следующий вывод начнется с новой строки. Команда состоит из трех частей: класс System (мост к операционной системе), его поле out (поток вывода на консоль) и метод println(), который печатает текст.
С чего начинается изучение языка программирования? С написания первой программы. Традиционно первая программа называется “Hello world”, и весь ее функционал состоит из вывода на консоль фразы “Hello world!”. Такая простая программа дает возможность новому программисту почувствовать, что что-то да заработало.Кратко
System.out.println()выводит текст на консоль и переводит вывод на новую строку.- Команда состоит из трех частей: класс
System, полеoutи методprintln(). Systemэто класс-мост между программой и операционной системой.outэто поле класса System, ссылка на поток вывода (объектPrintStream), направленный в консоль.println()печатает аргумент и добавляет перевод строки;print()печатает без переноса.printf()выводит форматированный текст.

“Hello world” на разных языках программирования
На разных языках программирования код будет разным: Pascal “Hello world”
begin
writeln ('Hello, world.');
end.
C “Hello world”
int main() {
printf("Hello, World!");
return 0;
}
C# “Hello world”
static void Main(string[] args)
{
System.Console.WriteLine("Hello World!");
}
Java “Hello world”
public static void main(String[] args) {
System.out.println("Hello World!");
}
Несмотря на различный код, у всех программ есть общая команда, которая непосредственно и выводит текст на консоль:
| Язык | Команда вывода на консоль |
|---|---|
| Pascal | writeln |
| C | printf |
| C# | System.Console.WriteLine |
| Java | System.out.println |
Подробнее о выводе на консоль в Java
Как вы уже поняли, чтобы вывести текст на консоль, в Java необходимо воспользоваться командойSystem.out.println(). Но что значит этот набор символов?
Для тех, кто знаком с языком Java и основными терминами ООП (для студентов, которые прошли курс JavaRush примерно до 15 уровня), ответ очевиден: “Для вывода текста на консоль мы обращаемся к статическому полю out класса System, у которого вызываем метод println(), и в качестве аргумента передаем объект класса String”. Если для вас смысл сказанного выше туманный, значит, будем разбираться!
Данная команда состоит из трех слов: System out println. Каждое из них представляет собой какую-то сущность, которая предоставляет необходимый функционал для работы с консолью.
System это сущность (в Java это называется классом), которая выполняет роль “моста”, соединяющего вашу программу со средой, в которой она запущена.
out это сущность, которая хранится внутри System. По умолчанию ссылается на поток вывода на консоль. Подробнее о потоках ввода/вывода в Java можно прочитать здесь.
println это метод, который вызывается у сущности out, чтобы обозначить способ, с помощью которого информация будет выведена на консоль.
Кратко роль каждой части удобно свести в таблицу:
| Часть | Что это | Роль |
|---|---|---|
System | класс | мост между программой и операционной системой |
out | поле класса System (объект PrintStream) | поток вывода, направленный в консоль |
println() | метод объекта out | печатает аргумент и добавляет перевод строки |
System
Как уже сказано,System это некая сущность (класс), которая предоставляет разработчику возможности для общения с окружающей его средой: то есть, операционной системой, под которой запущена программа. Так как консоль это приложение, установленное внутри операционной системы (командная строка, Shell для Windows и Terminal для Linux), становится понятно, для чего используется сущность System: для установки связи между нашей программой и “внешним миром”.
Кроме соединения с консолью, у System есть и другой функционал:
Доступ к переменным окружения операционной системы:
System.getenv("JAVA_HOME")Немедленная остановка программы:
System.exit(0)Прерывает выполнение программы путем остановки Java Virtual Machine;
Получение разделителя строк, который используется в этой операционной системе:
System.lineSeparator()Получение текущего времени системы в миллисекундах:
и еще много полезного функционала.System.currentTimeMillis();
Возвращает значение переменной окружения JAVA_HOME, которая устанавливается в системных настройках ОС. При установке Java ты наверняка с ней сталкивался;
System содержит поля, которые хранят ссылки и на другие сущности:
outуже знакомая нам ссылка на сущность потока вывода информации на консоль;inссылка на сущность, которая отвечает за чтение вводимой информации с консоли.errочень похожа наout, но предназначена для вывода ошибок.
System, программист может их использовать в своих целях. В языке Java для обращения к элементу, который находится внутри другого элемента, используется оператор “.”. Таким образом, чтобы получить доступ к сущности потока вывода информации на консоль, нужно написать код:
System.out
Теперь разберемся, что из себя представляет этот out.
out
out это имя переменной, которая хранит ссылку на объект (сущность) типа PrintStream. Этот объект настроен таким образом, чтобы вся информация, которая записывается в него, попадала на консоль. Так, объект out является экземпляром класса PrintStream, и у него можно вызвать соответствующие методы:
| Метод | Что делает |
|---|---|
print() | выводит переданную информацию (числа, строки, объекты) без переноса строки |
println() | выводит информацию и добавляет перевод строки |
printf() | форматированный вывод: подставляет аргументы в строку по специальным шаблонам |
print() и println() невелика. Единственное, чем отличается println(), так это тем, что он вместо нас добавит переход на новую строку, что и делает его популярнее print().
Если мы три раза вызовем метод print() с аргументом “Hello World!”, результатом будет такая строка:
Hello World!Hello World!Hello World!
В то время как метод println() каждый вывод будет производить с новой строки:
Hello World!
Hello World!
Hello World!
Для вызова метода у объекта используется знакомый нам оператор “.”. Таким образом, вызов метода println() у сущности out выглядит так:
out.println()
println
Как и в многих других языках программирования, в Java println это сокращение от “print line”. Мы уже знаем, чтоprintln() это метод, который необходимо вызвать у сущности out.
Если ты новичок в Java и в программировании в целом, то методы это некий набор команд, которые логически объединены. В нашем случае, println() это блок команд, который направляет текст в поток вывода и в конце добавляет перевод строки.
В Java методы могут получать аргументы. Когда мы вызываем метод, аргументы передаются внутрь круглых скобок.
println(“Hello World!”);
В свою очередь, код, который находится внутри метода, получает переданный нами текст и отправляет его на вывод.
Построим логическую цепочку
Чтобы вывести текст на консоль, Java-программисту необходимо сделать следующее:- Обратиться к сущности, которая способна соединить наше приложение и консоль,
System; - Обратиться к потоку вывода на консоль,
System.out; - Вызвать метод, который записывает информацию на консоль,
System.out.println; - Передать текст, который необходимо записать,
System.out.println(“Hello World!”);
Подведем итоги
Обычный вывод информации на консоль в Java запускает целую цепочку обращения к различным объектам и методам. Понимание того, что происходит во время вызова самой используемой команды в Java, делает нас немного ближе к статусу Джава-Гуру! Полное описание методов вывода есть в документации Oracle (класс PrintStream).Читайте также
- Класс Scanner: как считывать то, что пользователь вводит с консоли (
System.in). - Экранирование символов: как выводить кавычки, переносы строки
\nи другие спецсимволы.
Вопросы и ответы
Что делает System.out.println в Java?
Выводит переданный текст (или число, объект) на консоль и добавляет перевод строки, то есть следующий вывод начнется с новой строки.Из чего состоит команда System.out.println?
Из трех частей: классSystem (мост к операционной системе), его поле out (поток вывода на консоль, объект PrintStream) и метод println() (печатает текст с переносом строки).
Чем отличается print от println?
println() после вывода добавляет перевод строки, а print() выводит текст без переноса, поэтому следующий вывод продолжится на той же строке.
Что такое out в System.out?
Это статическое поле классаSystem, которое хранит ссылку на объект PrintStream, настроенный на вывод в консоль.
Что делает printf?
Выводит форматированный текст: подставляет аргументы в строку по специальным шаблонам форматирования.Как вывести текст на консоль в Java?
ВызватьSystem.out.println("текст");, передав нужную строку в круглых скобках. Текст появится в консоли с новой строки.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ