#java
Как понимать конструкцию static {...}, находится в классе: class test { static { ... } }
Ответы
Ответ 1
В Java существует такое понятие, как статические инициализаторы. Статические инициализаторы — это методы, предназначенные для инициализации переменных класса, то есть переменных, описанных как static. Статические инициализаторы автоматически вызываются системой, когда класс загружается, поэтому они не могут иметь параметров и не возвращают значения. Кроме того, у метода нет имени. Что же остается? Ключевое слово static и фигурные скобки. public class Circle { static private double sines[] = new double[1000]; static private double cosines[] = new double[1000]; static { double x, delta_x; int i; delta_x = (Math.PI/2)/(1000-1); for(i = 0, x = 0.0; i < 1000; i++, x += delta_x) { sines[i] = Math.sin(x); cosines[i] = Math.cos(x); } } } Внутри одного класса может встретиться любое число таких статических инициализаторов. Статический инициализатор выполняется только один раз, когда такой класс впервые загружен.
Комментариев нет:
Отправить комментарий