Найти в Дзене
тотСамыйАйтишник

#12 Java: ч.1 Классы обертки примитивных типов данных (нестатические методы).

Java: План и дорожная карта развития + СОДЕРЖАНИЕ.

статья №11 Java: Операторы сравнения.

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

Java.
Java.

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

Примитивный тип данных "byte", его класс обертка с заглавной буквы "Byte". Для того чтобы воспользоваться оберточным типом данных "Byte", необходимо точно так же как и примитивный, для начало объявить переменную:
Пример: Byte val = 6; - это короткая запись(используем функцию "autoboxing" - автоупаковки, которая сама преобразует примитивный тип в класс обертку), теперь длинная запись Пример: Byte val = new Byte(6); - таким видом записи, разработчики не пользуются, но в такой записи, отчетливо видно, что создается объект класса "Byte" с помощью оператора "new". Про создание своих объектов, будем говорить в других статьях, конкретно в разделе ООП, но для промежуточного понимания немного разверну, что же делает оператор "new" - создает экземпляр нашего или системного класса, после чего возвращает ссылку на вновь созданный объект. Не переживай, дальше все будет понятно.

Итак, продолжим с "Byte". После того как мы объявили переменную, которая в последствии перевоплотилась в объект, мы можем посмотреть перечень нестатических методов. Нестатические методы, доступны только после создания экземпляра класса, то есть объекта. На следующей строчке, пишем имя нашей переменной и ставим точку, IDE Apache NetBeans нам любезно огласит весь список и так же предоставит описание каждого метода. Слева располагается наименование метода или константы, а справа возможное возвращаемое значение или "void" - говорит нам о том что никакого значения возвращено не будет, мы еще с ним встретимся в статье о методах.

Методы объекта "Byte".
Методы объекта "Byte".

Ну и для примера, выберем пару методов, первый "doubleValue()" - который преобразует наше число в вещественный тип и второй "toString()" - переведет в строковый тип данных.

Преобразование типов.
Преобразование типов.

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

Арифметические действия.
Арифметические действия.

Для других классов оберток, дублировать примеры не буду, так как, все что мы делали с "Byte", так же применимо и к другим типам. Но вкратце стоит по ним пробежаться:

Примитивный тип данных "short" его класс обертка "Short". Пример: Short val = 6; - короткая запись. Пример: Short val = new Short(6); - длинная запись.

Примитивный тип данных "long" его класс обертка "Long". Пример: Long val = 6; - короткая запись. Пример: Long val = new Long(6); - длинная запись.

Примитивный тип данных "int" его класс обертка "Integer". Пример: Integer val = 6; - короткая запись. Пример: Integer val = new Integer(6); - длинная запись.

Примитивный тип данных "char" его класс обертка "Character". Пример: Character val = 'A'; - короткая запись. Пример: Character val = new Character('A'); - длинная запись.

Примитивный тип данных "boolean" его класс обертка "Boolean". Пример: Boolean val = true; - короткая запись. Пример: Boolean val = new Boolean (true); - длинная запись.

Примитивный тип данных "double" его класс обертка "Double". Пример: Double val = 6.5d; - короткая запись. Пример: Double val = new Double(6.5d); - длинная запись.

Примитивный тип данных "float" его класс обертка "Float". Пример: Float val = 6.5f; - короткая запись. Пример: Float val = new Float(6.5f); - длинная запись.

Ну и на последок, я заготовил вам строковый тип данных. Самое интересное, что данный тип не имеет примитивного вида, а каждая объявленная переменная - это новоиспеченный объект, так что, встречаем "String", пользуемся короткой записью. Как успели заметить, для присвоения значения строковой переменной используются двойные кавычки"", одинарные для типа "Character". Пример: String strVal = "Hello World!"; - короткая запись. Пример: String strVal = new Float("Hello World!"); - длинная запись.

Для класса "String", методов намного больше, ну ничего, в процессе продвижения со многими нам придется столкнуться.

Методы класса "String".
Методы класса "String".

При работе с классами обертками, необходимо быть осторожным, из-за того что, как любой объект так и наша переменная обернутая в данный класс, может иметь значение "null"(нет ссылки на объект), а выполнение любых действий с таким значением, приведет к неминуемой ошибке. Как показано в примере, "val" имеет значение 23, а "val2" имеет значение "null", соответственно ошибка, так как выполнить арифметическую операцию число 23 с нулевой ссылкой не может. В большинстве случаев, такие ошибки присущи для строкового типа "String", ну и собственно в процессе реализации ваших собственных объектов.

Ошибка NullPointerException.
Ошибка NullPointerException.

Все что мы делали с "Byte", попробуйте с другими типами. Пока на этом все, до встречи в следующей статье.

статья №12 Java: ч.2 Классы обертки примитивных типов данных. (статические методы и константы)

Поставь лайк если понравилась статья, тебе всего лишь "клик", а мне радости полные штаны =). Подписывайся на канал, будет много интересных публикаций =).