Переменные Java их типы: объявление и инициализация

Переменная Java — это часть памяти, которая может содержать значение данных, она имеет тип данных.

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

В приведенном ниже примере кода метод main() содержит объявление единственной целочисленной переменной с именем number. Значение сначала устанавливается равным 10, а затем добавляется 20.

public class MyClass {

    public static void main(String[] args) {

        int number = 10;

        number = number + 20;
    }

}

Типы переменных Java

В Java есть 4 типа переменных:

  1. Нестатические поля;
  2. Статические поля;
  3. Локальные;
  4. параметры.
  • Нестатическое поле — это переменная, которая принадлежит объекту. Объекты сохраняют свое внутреннее состояние в нестатических полях. Нестатические поля также называются переменными экземпляра, поскольку они принадлежат экземплярам(объектам) класса.
  • Статическое поле — это переменная, которая принадлежит классу. Статическое поле имеет одинаковое значение для всех объектов, которые обращаются к нему. Статические поля также называются переменными класса.
  • Локальная переменная — это переменная, объявленная внутри метода. Она доступна только внутри метода, который ее объявил.
  • Параметр — это переменная, которая передается методу при вызове метода. Параметры также доступны только внутри метода, который их объявляет, хотя им присваивается значение при вызове метода.

Объявление переменной Java

Как именно объявляется переменная, зависит от типа(нестатическая, статическая, локальная, параметр).

Вот стандартный код как объявить переменную в Java:

type name ;

Вместо слова type вы пишете тип данных. Аналогично, вместо слова name вы пишете имя.

Вот пример с именем myVariable типа int.

int myVariable;

Вот примеры инициализации всех примитивных типов данных в Java:

byte    myByte;
short   myShort;
char    myChar;
int     myInt;
long    myLong;
float   myFloat;
double  myDouble;

Объявление типов объектов:

Byte       myByte;
Short      myShort;
Character  myChar;
Integer    myInt;
Long       myLong;
Float      myFloat;
Double     myDouble;
String     myString;

Обратите внимание на заглавную первую букву типов объектов.

Когда переменная указывает на объект, она называется «ссылкой» на объект.

Назначение

Присвоение значения переменной следует этому шаблону:

variableName = value ;

Вот три конкретных примера, которые присваивают значения трем различным переменным с разными типами данных:

myByte   = 127;

myFloat  = 199.99;

myString = "This is a text";

Первая строка назначает байтовое значение 127 байтовой переменной с именем myByte. Вторая строка присваивает значение с плавающей точкой 199.99 переменной с плавающей точкой с именем myFloat. Третья строка присваивает значение String(текст), это текст String с именем myString.

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

byte   myByte   = 127;

float  myFloat  = 199.99;

String myString = "string value";

Чтение

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

float myFloat1 = 199.99;

float myFloat2 = myFloat1;           // right hand side value in assignment

float myFloat3 = myFloat2 + 123.45;  // as part of arithmetic expression


System.out.println(myFloat3);        // as parameter in method call.

Правила и соглашения среди разработчиков

Существует несколько правил и соглашений, касающихся именования переменных:

  • Имена чувствительны к регистру. Имя money не совпадает с Money или MONEY.
  • Должны начинаться с буквы или символа $ или _.
  • После первого символа, имя также может содержать цифры(помимо букв, символа $ и символа _).
  • Не могут быть равны зарезервированным ключевым словам в Java. Например, слова int или for являются зарезервированными.

Вот несколько допустимых примеров имен:

myvar
myVar
MYVAR    
_myVar
$myVar
myVar1
myVar_1

Есть также несколько соглашений по именованию. Этим соглашениям нет необходимости следовать. Однако многие разработчики привыкли к этим соглашениям. Поэтому им будет проще читать ваш код, если вы будете следовать им, и вам будет легче читать код других разработчиков. Соглашения:

  • Пишутся в нижнем регистре.
  • Если состоят из нескольких слов, каждое слово после первого слова имеет свою первую букву, написанную в верхнем регистре. Например, variableName или bigApple.
  • Даже если это разрешено, не начинайте с $ или _.
  • Статические конечные поля(константы) имеют имена в верхнем регистре, обычно с использованием _ для разделения слов в имени. Например, EXCHANGE_RATE или COEFFICIENT.

Вывод

Из Java 10 можно заставить компилятор вывести тип локальной переменной, посмотрев, какой фактический тип назначен при объявлении. Это усовершенствование ограничено локальными переменными, индексами в циклах for-each и объявленными в циклах for.

Чтобы увидеть, как работает вывод такого типа, сначала приведем пример:

String myVar = "A string!";

В Java 10 больше нет необходимости указывать тип при объявлении, если тип можно вывести из значения, присвоенного переменной.

var myVar = "A string!";

Обратите внимание на ключевое слово var, используемое перед именем вместо типа String. Из присвоенного значения компилятор может видеть, что тип переменной должен быть String, поэтому вам не нужно писать это явно.

Вот еще примеров:

var list = new ArrayList();

var myNum = new Integer(123);

var myClassObj = new MyClass();

Оцените статью