Какова этимология "статического" метода?

Во многих языках, например Java и JavaScript, ключевое слово static относится к методам класса или переменным класса.

  • Почему это называется "статическим" методом? Почему не "синий" метод? Или "глобальный" метод?
  • Откуда взялось ключевое слово? Каково происхождение этой деноминации?
  • Это связано с компилятором?

1 ответ

Чтобы ответить на первый и второй вопрос ур.
Статический метод принадлежит самому классу, поэтому статический метод также называется методом класса.
Например,main() Метод должен быть статическим, чтобы виртуальная машина Java могла вызывать его без создания экземпляра класса для запуска программы Java.
Поскольку статический метод не зависит от объекта класса, то есть экземпляра, говорящего о наследовании в Java, метод всегда вызывается по ссылке, независимо от объекта экземпляра, на который он указывает.

Чтобы ответить на третий вопрос ur
Когда компилятор компилирует этот класс, он решает во время компиляции, какой именно метод вызывается для каждого вызова статического метода (это большая разница с вызовами нестатических методов: точный метод, который должен быть вызван, определяется только при запуске время в тех случаях). просто добавить к статическому методу в Java
. Статические конечные значения в скомпилированной версии сохраняются непосредственно в самом классе, если они являются примитивами, инициализированными во время компиляции.

Другие вопросы по тегам