Почему умный бросок так заметно выделяется? - PullRequest
0 голосов
/ 11 февраля 2019

Я пытаюсь понять, почему умные броски так ярко выделяются в IntelliJ.Например эта строка?получает умное приведение к String, и это привлекает много внимания: smart cast example

Я не ищу объяснения функции интеллектуального приведения в целом, а скорее попытаюсь понять, почему Jetbrainsсчитает, что это требует внимания разработчиков.

Ответы [ 2 ]

0 голосов
/ 11 февраля 2019

Я не могу сказать с точки зрения JetBrains, но, по моему мнению, вы сначала объявили эту переменную как String?например, теперь можно было бы ожидать, что он сохраняет его тип, но вместо этого тип меняется на String с использованием умного приведения, в данном случае это просто, но иногда вы можете иметь большую иерархию запечатанных классов, например, где разные классы имеют разные методы иэто должно помочь вам вспомнить, что тип не совпадает с объявленным, возможно, это их способ сказать, что раньше это был тип X, но теперь это Y внутри этого контекста.

0 голосов
/ 11 февраля 2019

Не JetBrains, но ... Потому что изменение типа из-за умного приведения является очень неочевидной вещью, которая происходит в вашем коде, и нет никакого реального способа, которым вы сами могли бы явно сделать его более видимым.Так что подсветка синтаксиса сделает это за вас.

...