外部インタフェース/API    

例題 - Phone Bookの作成と利用

例題のメイン関数phonebookは、電話帳にあるエントリのキーである引数を使わずに、あるいは1つ使って呼び出すことができます。関数は、最初に電話帳ファイル用に利用するディレクトリを決定します。

電話帳ファイルが存在しない場合は、java.io.FileOutputStreamオブジェクトを作成し、出力ストリームをクローズして作成します。つぎに、ハッシュテーブル内のキーと値の組の格納用のjava.util.HashtableのサブクラスであるJava APIクラスjava.util.Propertiesのオブジェクトを作成することにより、データ辞書を作成します。phonebookプログラムでは、キーは名前で、値は1つまたは複数の電話番号です。

関数phonebookは、java.io.FileInputStreamオブジェクトを作成することにより、読み込み用の入力ストリームを作成してオープンします。ハッシュテーブルの内容が存在すれば、それをロードするためにオブジェクトについてloadを呼び出します。ユーザがルックアップのためにキーをエントリに渡した場合は、エントリを探して表示するpb_lookupを呼び出すことによりエントリをルックアップします。その後、関数phonebookは、リターンします

phonebookが名前の引数なしで呼び出された場合は、可能な電話帳のアクションをテキスト化したメニューを表示します。

メニューは、プログラムを終了する選択肢も含みます。関数は、MATLAB関数を使ってメニューを表示し、ユーザの選択を入力します。

関数phonebookは、ユーザがメニューエントリで終了を選択するまで、ユーザの選択を受け取り、要求された電話帳のアクションを繰り返します。その後、関数phonebookは、java.io.FileOutputStreamオブジェクトを作成することにより、ファイル用の出力ストリームをオープンします。オブジェクトについてsaveを呼び出し、カレントのデータ辞書を電話帳ファイルに書き出します。最後に、出力ストリームをクローズしてリターンします。


 serialexampleプログラムの実行 関数phonebookの説明