をkotlinするためにJavaの変換私は、軌道のパッケージにKotlinのアプリケーションを開発していますが、私は、Tのparamどうあるべきかの俳優Unresolved reference: T
は
class HelloActor():AbstractActor<T>,Hello
を定義するためにいくつかの問題でね?文書内:* @param <T> a class that represents the state of this actor.
をkotlinするためにJavaの変換私は、軌道のパッケージにKotlinのアプリケーションを開発していますが、私は、Tのparamどうあるべきかの俳優Unresolved reference: T
は
class HelloActor():AbstractActor<T>,Hello
を定義するためにいくつかの問題でね?文書内:* @param <T> a class that represents the state of this actor.
私はそのアクターのフレームワークをよく理解していませんが、あなたがコメントで与えた詳細を基にして、私はAny
のどちらかでTを置き換えるべきだと思います。
あなたHelloActorは次のようになります必要があります。kotlinで
class HelloActor(): AbstractActor<Any>,Hello
、Any
はjava.lang.Object
、またはScalaではAnyRef
にマッピングされ、そして、彼らは同じ機能と目的を持っています。 Any
は、Object
またはAnyRef
が使用される場合はどこでも使用できます。 Javaクラスマッピングhereのkotlinより多くの記事を参照してください。
EDIT:実際にkotlinはJavaに似ていますので、scalaの代わりにJavaチュートリアルに従ってください。
あなたは `HelloActorKotlin' Any'はJavaの 'Object'と等価ではありません。これは、バイトコード内にマッピングされているだけです。さらに、Kotlin 'Any'はJavaの' Object'とScala' AnyRef'と同じ機能性と目的を持っていません。 Kotlin 'Any'はScala' AnyVal'によく似ています。 'Any'は' Int'や 'Double'のようなプリミティブ型を含むすべての型のスーパータイプです。 – Naetmul
@Naetmulはい私はそれを知っていますが、実際には同じとみなすことができます。また、Kotlinはプリミティブ型とラッパー型の違いを強調していません。 Javaとは違って、同じ名前を使用しており、明示的にラッパー・タイプ(またはその逆)を使用する手段はありません。だから、AnyValやAnyRef、さらにはAnyのように言うのは難しいです。なぜなら、kotlinでは 'AnyVal'の場所がないからです。 – glee8e
'HelloActor()' –
'このタイプは、コンストラクタを持っているので、lai0n @ – lai0n
あなたはのIntelliJ IDEAを使用していhere'初期化する必要がありますか? Javaでクラスを実装してから[Kotlinに変換する](https://www.jetbrains.com/help/idea/2017.1/converting-a-java-file-to-kotlin-file.html) – ledniov