Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Переменные класса или статические переменные в Java




Переменные класса или статические переменные в Java

· Переменные класса, также известные в Java как статические переменные, которые объявляются со статическим ключевым слово в классе, но за пределами метода, конструктора или блока.

· Там будет только одна копия каждой статической переменной в классе, независимо от того, сколько объектов создано из него.

· Статические переменные или переменные класса в Java используются редко, кроме когда объявляются как константы. Константы - переменные, которые объявлены как public/private, final и static. Константы никогда не меняются от первоначального значения.

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

· Видимость похожа на переменную экземпляра. Однако большинство статических переменных объявляются как public, поскольку они должны быть доступны для пользователей класса.

· Значения по умолчанию такое же, как и у переменных экземпляра. Для чисел по умолчанию равно 0, для данных типа Boolean — false; и для ссылок на объект — null. Значения могут быть присвоены при объявлении или в конструкторе. Кроме того, они могут быть присвоены в специальных блоках статического инициализатора.

· Статические переменные могут быть доступны посредством вызова с именем класса ClassName. VariableName.

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

Пример

import java. io. *; public class Employee{ // salary(зарплата) переменная private static private static double salary;    // DEPARTMENT(отдел) — это константа public static final String DEPARTMENT = " Разработка ";    public static void main(String args[]){ salary = 1000; System. out. println(DEPARTMENT+" средняя зарплата: " +salary); }}

Это будет производить следующий результат:

Разработка средняя зарплата: 1000

Примечание: для получения доступа из внешнего класса, константы должны быть доступны как Employee. DEPARTMENT.

В предыдущих материалах не раз упоминались модификаторы доступа. В следующем уроке мы подробно их рассмотрим.

 

8. Java — Модификаторы доступа и класса

 

Модификаторы — ключевые слова, которые Вы добавляете при инициализации для изменения значений. Язык Java имеет широкий спектр модификаторов, основные из них:

· модификаторы доступа;

· модификаторы класса, метода, переменной и потока, используемые не для доступа.

Чтобы использовать модификатор в Java, нужно включить его ключевое слово в определение класса, метода или переменной. Модификатор должен быть впереди остальной части оператора, как показано в следующих примерах:

public class className { //... }private boolean myFlag; static final double weeks = 9. 5; protected static final int BOXWIDTH = 42; public static void main(String[] arguments) { // тело метода}

Модификаторы доступа

Java предоставляет ряд модификаторов доступа, чтобы задать уровни доступа для классов, переменных, методов и конструкторов. Существует четыре доступа:

· Видимый в пакете (стоит по умолчанию и модификатор не требуются).

· Видимый только для класса (private).

· Видимый для всех (public).

· Видимый для пакета и всех подклассов (protected).

Модификатор доступа по умолчанию — без ключевого слова

Модификатор доступа по умолчанию — означает, что мы явно не объявляем модификатор доступа в Java для класса, поля, метода и т. д.

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

Пример

Переменные и методы могут быть объявлены в Java без каких-либо модификаторов, как показано в следующем примере:

String version = " 1. 5. 1"; boolean processOrder() { return true; }

Модификатор доступа private

Модификатор private — методы, переменные и конструкторы, которые объявлены как private в Java могут быть доступны только в пределах самого объявленного класса.

Модификатор доступа private является наиболее ограничивающим уровенем доступа. Класс и интерфейсы не могут быть private.

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

Использование модификатора private в Java является основным способом, чтобы скрыть данные.

Пример

Следующий класс использует контроль доступа private:

public class Logger { private String format; public String getFormat() { return this. format; } public void setFormat(String format) { this. format = format; }}

Здесь переменная format класса Logger является private, так что нет никакого способа для других классов, чтобы получить и установить её значение напрямую.

Таким образом, чтобы эта переменная была доступна для всего, мы определили два открытых (public) метода: getFormat(), который возвращает значение format, и setFormat(String), который устанавливает её значение.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...