Any
не то же самое, что Class<?>
в Java.
Тип Any
является альтернативой Scala для Java Object
с расширениями: в отличие от Java Object
это супертип буквально все в Scala, включая примитивы.
Class[_]
(сокращенно Class[Any]
) имеет тот же тип, как в Java Class<?>
, а именно это путь в Java Class<?>
представлен в Scala. Экземпляры типа Class
в Scala, как и в Java, обеспечивают основные возможности отражения по типу, предоставленному в качестве его общего параметра. То есть экземпляр Class[Something]
предоставляет стандартный API отражения Java по классу Something
. Вы можете использовать его так же, как и в Java. Чтобы получить этот экземпляр, вы вызываете стандартный метод classOf[Something]
или instanceOfSomething.getClass
.
Расширенные возможности отражения, предназначенные главным образом для решения проблемы стирания типа, поставляются с Scala 2.10, довольно стабильными версиями моментальных снимков, которые вы всегда можете скачать. Этот расширенный API предоставляется через объект scala.reflect.runtime.Mirror
. В Интернете пока мало документации, но вы можете найти приличную информацию здесь, в StackOverflow.
Ваш код не является полным, чтобы рассказать, что здесь происходит - где, например, происходит «рендеринг». –
Что случилось с кодом Scala, который вы отправили, если что-нибудь? –
Исправлен код. Ну, я более или менее спрашиваю, что делает класс > в Scala? Благодарю. –