Что делает public static void
средний в Java?
Я нахожусь в процессе изучения. Во всех примерах в книге я работаю от public static void
прибывает перед любым методом, который используется или создается. Что это означает?
Это три совершенно разные вещи:
public
означает, что метод виден и может быть вызван из других объектов других типов. Другими альтернативами являются private
, protected
, package
и package-private
. Подробнее см. в здесь.
static
означает, что метод связан с классом, а не с конкретным экземпляром (объектом) этого класса. Это означает, что вы можете вызвать статический метод без создания объекта класса.
void
означает, что метод не имеет возвращаемого значения. Если бы метод возвращал int
, вы бы написали int
вместо void
.
Комбинация всех этих трех вариантов чаще всего встречается в методе main
, который есть в большинстве учебников.
Это означает, что:
public
- его можно вызывать откуда угодно static
- у него нет состояния объекта, поэтому вы можете вызывать его без создания экземпляра объекта void
- он ничего не возвращает Вы могли подумать, что отсутствие возврата означает, что он ничего не делает, но, например, он может сохранять что-то в базе данных.
Эти три слова имеют ортогональные значения.
public
означает, что метод будет виден из классов других пакетов.
static
означает, что метод не привязан к конкретному экземпляру, и у него нет "this
". Это более или менее функция.
void
- это тип возврата. Он означает "этот метод ничего не возвращает".
Это означает три вещи.
Первый общедоступный
означает, что любой другой объект может получить к нему доступ.
static
означает, что класс, в котором он находится, не должен быть создан перед вызовом функции.
void
означает, что функция не возвращает значение.
Поскольку вы только учитесь, не беспокойтесь о первых двух, пока вы не узнаете о классах, а третий не будет иметь большого значения, пока вы не начнете писать функции (кроме main).
Лучший совет, который я получил, когда учился программировать и который я передаю вам, - не беспокойтесь о мелких деталях, которые вы не понимаете сразу. Получите широкий обзор основ, а затем вернитесь и позаботьтесь о деталях. Причина в том, что вы должны использовать некоторые вещи (например, public static void
) в ваших первых программах, которые на самом деле нельзя хорошо объяснить, не обучая вас кучу других вещей. Итак, на данный момент просто примите, что это так, и двигайтесь дальше. Вы скоро их поймете.