русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Заборонені перетворення


Дата додавання: 2014-05-29; переглядів: 1016.


Не всі переходи між довільними типами допустимі. Наприклад, до заборонених перетворень відносяться: переходи від будь-якого вказівного типу до примітивного, від примітивного - до вказівного (крім перетворень до рядку). Вже згадуваний приклад - тип boolean - не можна привести ні до якого іншого типу, крім boolean (як завжди - за винятком приведення до рядка). Потім, неможливо привести один до одного типи, що знаходяться не на одній, а на сусідніх гілках дерева наслідування. У прикладі, який розглядався для ілюстрації перетворень посилальних типів, перехід від Child до Child2 заборонений. Справді, посилання типу Child може вказувати на об'єкти, породжені тільки від класу Child або його спадкоємців. Це виключає вірогідність того, що об'єкт буде сумісний з типом Child2.

Цим список заборонених перетворень не вичерпується. Він досить великий, і в тої ж годину всі варіанти досить очевидні, тому докладно розглядатися не будуть. Бажаючі можуть отримати повну інформацію з специфікації.

Зрозуміло, спроба здійснити заборонене перетворення викличе помилку компіляції.


 


<== попередня лекція | наступна лекція ==>
Перетворення до рядку | Тема 6 Масиви. Робота з рядками. Виключення. Пакет java.lang


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн