- •Аннотация
- •Лекция 7. Преобразование типов
- •1. Введение
- •2. Виды приведений
- •2.1. Тождественное преобразование
- •2.2. Преобразование примитивных типов (расширение и сужение)
- •2.3. Преобразование ссылочных типов (расширение и сужение)
- •2.4. Преобразование к строке
- •2.5. Запрещенные преобразования
- •3. Применение приведений
- •3.1. Присвоение значений
- •3.2. Вызов метода
- •3.3. Явное приведение
- •3.4. Оператор конкатенации строк
- •3.5. Числовое расширение
- •3.5.1. Унарное числовое расширение
- •3.5.2. Бинарное числовое расширение
- •4. Тип переменной и тип ее значения
- •5. Заключение
- •6. Контрольные вопросы
Программирование на Java
Лекция 7. Преобразование типов
20 января 2003 года
Авторы документа:
Николай Вязовик (Центр Sun технологий МФТИ) <vyazovick@itc.mipt.ru> Евгений Жилин (Центр Sun технологий МФТИ) < gene@itc.mipt.ru>
Copyright © 2003 года Центр Sun технологий МФТИ,ЦОС и ВТ МФТИ®, Все права защищены.
Аннотация
Эта лекция посвящена вопросам преобразования типов. Поскольку Java – язык строго типизированный, компилятор и виртуальная машина всегда следят за работой с типами, гарантируя надежность выполнения программы. Однако во многих случаях то или иное преобразование необходимо осуществить для реализации логики прграммы. С другой стороны, некоторые безопасные переходы между типами Java позволяет осуществлять неявным для разработчика образом, что может привести к неверному пониманию работы программмы.
В лекции рассматриваются все виды преобразований, а затем все ситуации в программе, где они могут применяться. В заключение приводится начало классификации типов переменных и типов значений, которые они могут хранить. Этот вопрос будет детализироваться в будущих лекциях.
Rendered by www.RenderX.com
ii |
|
|
Оглавление |
|
|
Лекция 7. Преобразование типов ..................................................................................... |
1 |
|
1. |
Введение ........................................................................................................................ |
1 |
2. |
Виды приведений .......................................................................................................... |
2 |
|
2.1. Тождественное преобразование ......................................................................... |
3 |
|
2.2. Преобразование примитивных типов (расширение и сужение) ....................... |
3 |
|
2.3. Преобразование ссылочных типов (расширение и сужение) ........................... |
7 |
|
2.4. Преобразование к строке ..................................................................................... |
9 |
|
2.5. Запрещенные преобразования .......................................................................... |
10 |
3. |
Применение приведений ............................................................................................ |
10 |
|
3.1. Присвоение значений .......................................................................................... |
11 |
|
3.2. Вызов метода ...................................................................................................... |
12 |
|
3.3. Явное приведение .............................................................................................. |
14 |
|
3.4. Оператор конкатенации строк ............................................................................ |
15 |
|
3.5. Числовое расширение ........................................................................................ |
15 |
|
3.5.1. Унарное числовое расширение ................................................................. |
15 |
|
3.5.2. Бинарное числовое расширение .............................................................. |
16 |
4. |
Тип переменной и тип ее значения ............................................................................ |
16 |
5. |
Заключение.................................................................................................................... |
18 |
6. |
Контрольные вопросы................................................................................................... |
18 |
Программирование на Java
Rendered by www.RenderX.com