有什么区别吗?以下两者之间的区别是什么:
class SomeClass<T>(var param: T)
和
class SomeClass<Any>(var param: Any)
?它们之间有什么区别吗?看起来这些类的工作方式是一样的。
hlswsv351#
是的,它们基本上是一样的。声明泛型类的语法是:
class ClassName<GenericClassType>
因此,在您的示例中,T和Any都是标识符。但是,第一个(T)看起来是一个更好的选择,因为Any隐藏了一个Kotlin类型。kotlin.Any参考:https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/)。
T
Any
kotlin.Any
1条答案
按热度按时间hlswsv351#
是的,它们基本上是一样的。
声明泛型类的语法是:
因此,在您的示例中,
T
和Any
都是标识符。但是,第一个(T
)看起来是一个更好的选择,因为Any
隐藏了一个Kotlin类型。kotlin.Any
参考:https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/)。