Найти в Дзене
yagdmitrij

Ключевые слова, типы данных и переменные.

Как было сказано в одной из предыдущих статей, в названиях класса, метода, переменной и т.д. могут использоваться любые словосочетания, кроме ключевых слов и слов, начинающихся с цифр и знаков подчеркивания. Ключевые слова java Ниже приведен список ключевых слов, зарезервированных в java. Некоторым из них дадим расшифровку. boolean, byte, int, long, short, double, float, char. Все эти ключевые слова относятся к типам данных, о которых поговорим чуть позже. if else, switch case – операторы выбора while do, for each -операторы циклов. abstract -что абстрактное, не ясно выраженное. Абстрактным может быть класс или метод. catch, try, finally, trow, trows –операторы для обработки исключений. assert- позволяет проверять отдельные участки кода на наличие ошибок. class- применяется для создания классов в java. default - используется в интерфейсах для методов по умолчанию. enum - используется в перечислении. extends – наследование, наследование классов. final – используется в переменных, переме
Оглавление

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

Ключевые слова java

Ниже приведен список ключевых слов, зарезервированных в java. Некоторым из них дадим расшифровку.

boolean, byte, int, long, short, double, float, char.

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

if else, switch case – операторы выбора

while do, for each -операторы циклов.

abstract -что абстрактное, не ясно выраженное. Абстрактным может быть класс или метод.

catch, try, finally, trow, trows –операторы для обработки исключений.

assert- позволяет проверять отдельные участки кода на наличие ошибок.

class- применяется для создания классов в java.

default - используется в интерфейсах для методов по умолчанию.

enum - используется в перечислении.

extends – наследование, наследование классов.

final – используется в переменных, переменная, которую уже нельзя изменить, по сути, которая является константой. Также может использоваться в определении класса или метода. В первом случае, класс не может наследоваться, а во втором, метод не может переопределяться.

implemens - при помощи его в классах реализуются интерфейсы. Вообще-то, интерфейс в java очень интересная вещь. Пока не столкнёшься с «тоннами» написанного кода, не осознаешь смысл фразы «один интерфейс – множество методов».

import - с помощью этого слова подключаются пакеты java к вашей программе.

interface - создание интерфейса.

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

new - с помощью этого слова создаются объекты.

package - создание пакетов.

private, protected, public – модификаторы доступа к переменной, методу или классу.

break, continue, return, goto -операторы перехода. Последний оператор в java не используется, вместо него применяется break. Такая же ситуация с ключевым словом const, которое также не используется. Если они не используются, то зачем они зарезервированы? У меня нет ответа.

static – статическим может быть переменная или метод. Это означает, что они могут быть вызваны без создания объекта. Примером может быть метод main, с которого начинается выполнение программы еще до создания всяких объектов.

super – с помощью этого слова вызывается конструктор, метод или переменная суперкласса.

strictfp – используется для одинаковой точности при вычислении вещественных чисел на разных платформах.

synhronized – используется для синхронизации потоков.

this - используется для ссылки на объект текущего класса. Можно также с помощью этого ключевого слова обращаться к переменным класса, которые скрыты переменными метода или конструктора.

transient – модификатор, указывающий, что данные поля не сериализуются.

void - употребляется в определение метода, если он не возвращает никаких значений.

volatile – используется для корректной записи и чтении данных в многопоточном программировании.

Понятие типа данных

В java типы переменных делятся на две категории: примитивные типы и ссылочные типы. Примитивные типы включают целочисленные числа, числа с плавающей точкой, символы и логические значения. Ссылочные типы включают объекты, массивы и интерфейсы. Хотя массив и интерфейс тот же объект. Выбор типа переменной зависит от того, какие данные мы хотим хранить и как планируем использовать. Примитивные типы не требуют создания объектов, хотя в java есть возможность упаковать их в объекты. Безобъектная модель примитивных типов связана с увеличением производительности. Что относится к типам данных:

целочисленный типы – long, int, short, byte;

с плавающей точкой – float, double;

символьные – char;

логические – boolean;

Если предположить, что переменные - это кирпичики на которых держится программа или строится, то тип данных - это вид строительных кирпичей: печные, облицовочные, силикатные или тротуарные.

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

переменная=(тип_к_которому_нужно_привести) переменная;

справедливо:

преобразование типов данных
преобразование типов данных

Результатом приведения будет b=100. А что если мы захотим привести целочисленное значение, которое не входит в диапазон допустимых значений byte (от -128 до 127), например, a= 300? В этом случае часть значения отсекается и в переменную записывается b только 44. Каким образом это происходит? В литературе по этому поводу сказано «...значение уменьшается до результата деления по модулю на 256...). Хорошо, а как насчет b=400? Рекомендую поиграть с числами, результаты будут удивлять. Думаю, что отсечение чисел происходит по-другому....

Переменные

Переходим к теме, на которой хотелось остановиться более подробно. Смысл переменной заключается в хранении значений. В java область действия переменных лежит между фигурными скобками ({}). По сути существуют две области. Одна - это область класса, другая – область метода. Так вот, переменные, находящиеся в методе не видны коду из класса, при этом из самого метода переменные класса видны. Таким образом, переменные во внутренней области не видны из внешней, а из внутренней «просматривается» вся «внешка». Это хорошо видно из следующей диаграммы.

область действия переменной
область действия переменной

Если посмотреть на наши кирпичики, класс-дом и книга-метод, то кирпичи, находящиеся в доме, хорошо видны и могут использоваться книгой. А к тем кирпичам, которые используются в книге, доступ из (извне) дома закрыт. Как-то так, может это и не лучшее сравнение).

Когда наш код защищен от изменения извне это и называется инкапсуляцией.

Следующий момент - объявление переменных. Важно запомнить, что переменная всегда объявляется до ее использования. Действительно, мы же не можем построить русскую печь, а только потом приобрести красный кирпич.

А сколько времени может жить переменная? Век ее недолгий. Переменная создается при вхождении в область ее действия, которая располагается между фигурными скобками, и умирает при выходе из нее. В книге Герберта Шилдта «Java 8. Полное руководство» приводится пример программы, в которой демонстрируется время жизни переменной. Однако в ней я не смог рассмотреть ту самую демонстрацию. Цитата: «Как видите, переменная y повторно инициализируется значением -1 при каждом вхождении во внутренний цикл for. И хотя переменной y впоследствии присваивается значение 100, тем не менее оно теряется». Спорно, так как я могу утверждать, что оно не теряется, а просто перезаписывается. Просто увидеть это в нижеприведённом примере нельзя. Или я этого не вижу?

время жизни переменной
время жизни переменной

На мой взгляд, концепция жизни переменной логична, так как если бы переменная не уничтожалась на выходе из области ее действия, то создавались бы множество копий переменных. Что, в свою очередь, отразилось бы на производительности программы.

В этой статье мы рассмотрели основные ключевые слова, используемые в java, типы данных и переменные. Кстати, результат логических операций: true и false, можно также отнести к ключевым словам.

Подписывайтесь на канал и в следующей статье мы рассмотрим операции, которые применяются в java.