EeBlog(テクニカルブログ) :Javaワンポイント

第115回 ネイティブアプリケーションからJavaVMを実行する

JNIではネイティブメソッドを実装するためのAPIだけでなくJavaVMを作成するAPIも用意されています。 これによりJavaプログラムをネイティブアプリケーションから実行することができます。

ではこのAPIを用いてネイティブアプリケーションからJavaVMを作成してHelloWorldを表示してみましょう。

(さらに…)

第114回 ネイティブメソッドで Hello World

Java には native というキーワードがありますが Java の入門書のキーワード一覧で見たことがあるだけで使い道を知らないという人がほとんどではないでしょうか。
このキーワードは native修飾子といい、メソッドがネイティブメソッドであることを示します。 ネイティブメソッドとはメソッドがJavaではない他の言語で実装されているメソッドのことです。 他の言語でメソッドを実装することでOSのシステムコールやライブラリを呼び出すことができるようになりますが、 プラットフォームに依存した実装になるため Java の「Write Once, Run Anywhere」というスローガンは当てはまらなくなります。
では、実際にこの native修飾子を使って以下の Hello World プログラムをネイティブメソッドで書き直してみましょう。
(さらに…)

第113回 ソケットチャンネルの入出力

引き続き「ソケットチャンネルの入出力」です。

今回はDatagramChannelによる通信で受信側のプログラムを実装します。
DatagramChannelもSelectableChannelを継承しているので、非ブロックモードで入出力を行うことができます。

次のサンプルコードは、データを受信するプログラムです。
(さらに…)