Иллюстрированный самоучитель по Java

       

Статические члены класса


Разные экземпляры одного класса имеют совершенно независимые друг от друга поля-, принимающие разные значения. Изменение поля в одном экземпляре никак не влияет на то же поле в другом экземпляре. В каждом экземпляре для таких полей выделяется своя ячейка памяти. Поэтому такие поля называются переменными

экземпляра класса

(instance variables) или переменными

объекта.

Иногда надо определить поле, общее для всего класса, изменение которого в одном экземпляре повлечет изменение того же поля во всех экземплярах. Например, мы хотим в классе

Automobile

отмечать порядковый заводской номер автомобиля. Такие поля называются

переменными класса

(class variables). Для переменных класса выделяется только одна ячейка памяти, общая для всех экземпляров. Переменные класса образуются в Java модификатором

static

. В листинге 2.3 мы записываем этот модификатор при определении переменной

number

.

Листинг 2.3.

Статическая переменная

class Automobile {

   private static int number; 

   Automobile(){ 

      number++;

      System.out.println("From Automobile constructor:"+ 

                         " number = "+number);

   }

}

public class AutomobiieTest{

   public static void main(String[] args){

   Automobile lada2105    = new Automobile(), 

              fordScorpio = new Automobile(),

              oka         = new Automobile!);

   } 

}

Получаем результат, показанный на рис. 2.2.

Рис. 2.2.

Изменение  статической переменной

Интересно, что к статическим переменным можно обращаться с именем класса,



Содержание  Назад  Вперед







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