Почему `instanceof` выдаёт ошибку, а не возвращает `false` при использовании для двух несовместимых классов? [дубликат]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Почему `instanceof` выдаёт ошибку, а не возвращает `false` при использовании для двух несовместимых классов? [дубликат]

Сообщение Anonymous »


Я читаю это:
http://java.sun.com/docs/books/jls/ Third_edition/html/expressions.html#15.20.2

Они говорят:

Рассмотрим пример программы:

class Point { int x, y; } класс Element { intatomicNumber; } класс Тест { public static void main(String[] args) { Точка р = новая точка(); Элемент е = новый элемент(); if (e instanceof Point) { // ошибка времени компиляции System.out.println("Я понял вашу точку зрения!"); р = (Точка)е; // ошибка времени компиляции } } } Выражение instanceof неверно, поскольку ни один экземпляр Element или любой из его возможных подклассов (ни один из них здесь не показан) не может быть экземпляром какого-либо подкласса >Точка.

Почему это приводит к ошибке, а не просто к тому, что instanceof возвращает false?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»