0

例: C コードでは、次のようなアセンブラ コードの一部を呼び出すことができます。

int main()
{
   //... stuff
   __asm
   {
      lea ebx, hal
      mov ecx, [ebx]hal.same_name ;
      mov esi, [ebx].weasel       ;
   }
   // .. further stuff
   return 0;
}

Java (*.java) ファイルの Kotlin コードでこのようなコード統合は可能ですか?

(Java で JNI や C/C++ について話しているわけではありません!) 既存の (AndroidStudio-) Java-Source-Code を Kotlin 言語で拡張したいと考えています。

//.. this is *.java file
public class MyAlreadyExistingJavaClass {

private int memberVar;

public MyAlreadyExistingJavaClass()
{

}

// this is Kotlin within *.java file
// extend this Java file with this constuctor in KOTLIN ?
// would make above default constructor unneccessary.
class MyAlreadyExistingJavaClass(number: Int = 0)
{
  memberVar = number;
}

}
4

2 に答える 2

0

私は Kotlin 開発者ではなく Groovy 開発者ですが、KotlinはスクリプトAPI を提供しているようです。Groovy、JavaScript、および JRuby はすべて、標準の Java ScriptEngine API を使用して Java クラス内から呼び出すことができます。Java クラス内での Kotlin のインライン化を近似するには、そのようなものが必要です。アセンブリの例のように直接実行されるのではなく、ScriptEngine に準拠した Kotlin 実装を介して渡されるため、概算と言います。

于 2016-08-08T12:45:43.373 に答える