Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Урок 31: Классы-обертки примитивных типов данных.
https://www.youtube.com/watch?v=P7b_dzMFG7s&index=32&list=PLAma_mKffTOSUkXp26rgdnC0PicnmnDak
1. В Java переменные имеют тип. Тип переменной определяет, какие данные могут записываться в переменную, какой объем памяти выделяется под переменную и какие операции могут выполняться с переменной.
2. В Java существует несколько базовых, или простых, типов данных. - Целочисленные типы (byte, short, int и long). - Действительные числовые типы (fl oat и double). - Символьный тип char (значение – буква или символ). - Логический тип boolean (два значения – true и false).
3. При объявлении переменной указывается тип ее значения и имя. Одновременно с объявлением, можно переменной присвоить значение (инициализировать переменную). Несколько переменных можно объявлять одновременно. Объявление и инициализация переменной производится в любом месте метода, но до ее первого использования.
4. Константа от переменной отличается тем, что значение константы после инициализации (которая выполняется вместе с объявлением) изменить нельзя. Константы описываются так же, как переменные, но для них указывается еще ключевое слово final.
5. Для базовых типов существуют классы-оболочки: Byte, Short,Integer, Long, Float, Double, Character и Boolean соответствен-но для типов byte, short, int, long, fl oat, double, char и boolean. Класс-оболочка предназначен для реализации того или иного значения в виде объекта.
6.В отличии от примитивных типов данных у классов-оболочек имеется ряд полезных методов. В этом их главное преимущество перед примитивами!!! Например, у класса Integer есть статический метод parseInt(), с помощью которого текст, содержащий представление целого числа, преобразуется в число. 7. Классы-оболочки/обёртки лежат в import java.langЮ и импортируются по умолчанию.
public class Test { public static void main(String[] args) { int x = 123; System. out. println ("int x = 1; - " + x); Integer x2 = new Integer (123); System. out. println ("Integer x2 = new Integer (123); - " + x2); Integer. parseInt ("123"); System. out. println ("Integer.parseInt (\" 123 \"); - " + Integer. parseInt ("123")); }
Вывод в консоль:
int x = 1; - 123 Integer x2 = new Integer (123); - 123 Integer.parseInt ("123"); - 123
АвтоУпаковка и автоРаспаковка.
public class Test { public static void main(String[] args) { /* АвтоУпаковка выглядит так: Integer x2 = new Integer (123); Но это избыточная форма упаковки. Лучше делать так: Integer x2 = 123; или Integer x2 = x; */ int x = 123; Integer x2 = 123; Integer x3 = x; System. out. println ("АвтоУпаковка int x = 123; - " + x); System. out. println ("АвтоУпаковка Integer x2 = 123; - " + x2); System. out. println ("АвтоУпаковка Integer x3 = x; - " + x3);
System. out. println (); /* }
Вывод в консоль:
АвтоУпаковка int x = 123; - 123 АвтоУпаковка Integer x2 = 123; - 123 АвтоУпаковка Integer x3 = x; - 123
АвтоРаспаковка y = x2; - 123 АвтоРаспаковка y = x3; - 123
Урок 32: Восходящее и нисходящее преобразование. https://www.youtube.com/watch?v=88P-SGqIeeE&index=33&list=PLAma_mKffTOSUkXp26rgdnC0PicnmnDak
Восходящее преобразование. public class Test { public static void main(String[] args) { /* UPcasting - Восходящее преобразование. Восходящее преобразование происходит неявно, как long = int и double = float. Animal animal = new Dog (); Animal animal <-- new Dog (); Class Animal Можно записать это еще так: /*
Вывод в консоль:
dog2.bark (); - Dog is barking...
!!!ОШИБКА при нисходящем преобразовании. public class Test { public static void main(String[] args) { /* DOWNcasting - ОПАСЕН!!! Если мы пытаемся Объкт - Родитель преобразовать в Объект - наследник, В этом случае мы не изменяем Объект, а меняем ссылку на него. */ Animal animal = new Animal (); Dog dog = (Dog) animal; dog.bark (); /* Если вызвать dog.bark (); Получим ошибку, как если бы мы вызвали bark(); из animal animal.bark();
-Нисходящее преобразование - НЕБЕЗОПАСНО!!!
Вывод в консоль:
Exception in thread "main" java.lang.ClassCastException: Animal cannot be cast to Dog at Test.main(Test.java:9)
Process finished with exit code 1
|
||||||
Последнее изменение этой страницы: 2020-11-11; просмотров: 100; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.221.53.5 (0.011 с.) |