Что означает "public static void" в Java?

Что означает public static void в Java?

Я участвую в процессе обучения. Во всех примерах из книги, в которой я работаю из public static void, появляется перед любым методом, который используется или создается. Что это значит?

Ответ 1

Это три совершенно разные вещи:

public означает, что метод видим и может быть вызван из других объектов других типов. Другие альтернативы являются частными, защищенными, пакетными и частными. Подробнее см. здесь.

static означает, что метод связан с классом, а не с конкретным экземпляром (объектом) этого класса. Это означает, что вы можете вызвать статический метод, не создавая объект класса.

void означает, что метод не имеет возвращаемого значения. Если метод возвратил int, вы должны написать int вместо void.

Комбинация всех трех из них наиболее часто встречается в методе main, который будет включать большинство учебных пособий.

Ответ 2

Три слова имеют ортогональные значения.

public означает, что метод будет виден из классов в других пакетах.

static означает, что метод не привязан к определенному экземпляру, и он не имеет "this". Это более или менее функция.

void - тип возвращаемого значения. Это означает, что "этот метод ничего не возвращает".

Ответ 3

Ключевое слово public - это спецификатор доступа, который позволяет программисту контролировать видимость членов класса. Когда член класса предшествует публике, то к этому члену может обращаться код вне класса, в котором он объявлен. (Противоположность public является частной, что не позволяет члену использоваться кодом, определенным вне его класса.)

В этом случае main( ) должен быть объявлен как открытый, так как он должен вызываться кодом вне его класса при запуске программы.

Ключевое слово static позволяет вызывать main( ) без необходимости создания экземпляра конкретного экземпляра класса. Это необходимо, так как main( ) вызывается интерпретатором Java до того, как будут созданы какие-либо объекты.

Ключевое слово void просто сообщает компилятору, что main( ) не возвращает значение. Как вы увидите, методы также могут возвращать значения.

Ответ 4

Это означает, что:

  • public - его можно вызывать из любого места
  • static - он не имеет никакого состояния объекта, поэтому вы можете вызвать его без создания экземпляра объекта
  • void - он ничего не возвращает

Вы подумали бы, что отсутствие возврата означает, что он мало что делает, но, возможно, это может спасти вещи в базе данных.

Ответ 5

Это означает три вещи.

Первый public означает, что любой другой объект может получить к нему доступ.

static означает, что класс, в котором он находится, не должен быть создан первым, прежде чем функция может быть вызвана.

void означает, что функция не возвращает значение.

Поскольку вы просто учитесь, не беспокойтесь о первых двух слишком много, пока вы не узнаете о классах, а третий не будет иметь большого значения, пока вы не начнете писать функции (кроме основного).

Лучший совет, который я получил, когда участвую в программе, и который я передаю вам, не беспокоится о маленьких деталях, которые вы не понимаете сразу. Получите широкий обзор основных принципов, затем вернитесь и подумайте о деталях. Причина в том, что вы должны использовать некоторые вещи (например, public static void) в своих первых программах, которые не могут быть действительно хорошо объяснены, не обучая вас сначала кучу других вещей. Итак, на данный момент, просто примите, что так оно и было, и двигайтесь дальше. Вы скоро их поймете.

Ответ 6

Public - означает, что класс (программа) доступен для использования любым другим классом.

Static - создает класс. Может также применяться к переменным и методам, делая их методы/переменные класса, а не только локальными для конкретного экземпляра класса.

Void - это означает, что продукт не возвращается, когда класс завершает обработку. Сравните это со вспомогательными классами, которые предоставляют возвращаемое значение основному классу, они работают как функции; они не имеют пробелов в объявлении.

Ответ 7

Учитывая типичный класс верхнего уровня. На верхнем уровне могут использоваться только общедоступные модификаторы и модификаторы модификатора, так что вы будете либо публичными, либо вообще не увидите никакого модификатора доступа.

`static`` используется, потому что вам может не понадобиться создавать фактический объект на верхнем уровне (но иногда вам захочется, чтобы вы не всегда могли видеть/использовать статику. Существуют и другие причины, по которым вы не включили бы статику тоже, но это типичный на верхнем уровне.)

void используется, потому что обычно вы не собираетесь возвращать значение с верхнего уровня (класса). (иногда вам нужно вернуть значение, отличное от NULL, поэтому void не всегда может использоваться, особенно в том случае, если вы объявили, инициализировали объект на верхнем уровне, которому вы назначаете какое-то значение).

Отказ от ответственности: Я сам новичок, поэтому, если этот ответ ошибочен, пожалуйста, не вешайте меня. Днем я технический рекрутер, а не разработчик; кодирование - мое хобби. Кроме того, я всегда открыт для конструктивной критики и любви к учебе, поэтому, пожалуйста, не стесняйтесь указывать на любые ошибки.

Ответ 8

  • public означает, что вы можете получить доступ к классу из любого места класса/объекта или вне пакета или класса
  • static означает константу, в которой блок выражения используется только 1 раз
  • void означает тип возврата

Ответ 9

static означает, что метод связан с классом, а не с конкретным экземпляром (объектом) этого класса. Это означает, что вы можете вызвать статический метод, не создавая объект класса. Из-за использования ключевого слова static main() - ваш первый метод, который нужно вызвать. static не нужен какой-либо объект для экземпляра... поэтому, main( ) вызывается интерпретатором Java до того, как будут созданы какие-либо объекты.