緑色の部分がコメントです。まずはコメントを手がかりに全体像を俯瞰して下さい。
/** * MainClient.java * キーボードから読み込んだ曜日、時限の情報をサーバに送信し、 * サーバから受信した「授業の情報」をディスプレイに表示するクライアント **/ import java.io.*; // 入出力関連パッケージを利用する import java.net.*; //ネットワーク関連のパッケージを利用する public class MainClient{ /** * 指定されたサーバに対して接続を要求し、 * 接続されたらキーボードから読み込んだ曜日・時限の情報を送信し、 * 受信した「授業の情報」をディスプレイに表示する **/ public static void main(String args[]){ try{ /* キーボードから接続するサーバ名を読み込む */ BufferedReader kbd = new BufferedReader(new InputStreamReader(System.in)); System.out.print("接続するサーバ名を入力してください> "); String serverName = kbd.readLine(); /* 指定されたサーバの8000番ポートに接続要求を送る */ Socket socket = new Socket(serverName, 8000); /* キーボードから曜日・時限の情報を読み込む */ System.out.println("該当する番号を入力してください。"); System.out.print("曜日(1:月 2:火 3:水 4:木 5:金)>> "); int dayOfWeek = Integer.parseInt(kbd.readLine()); System.out.print("時限(1 〜 5) >> "); int number = Integer.parseInt(kbd.readLine()); /* サーバに曜日・時限の情報を送信する */ ObjectOutputStream oos = new ObjectOutputStream(socket.getOutputStream()); Integer data1 = new Integer(dayOfWeek); Integer data2 = new Integer(number); oos.writeObject(data1); oos.writeObject(data2); oos.flush(); /* サーバから「授業の情報」を受信する */ ObjectInputStream ois = new ObjectInputStream(socket.getInputStream()); ClassTable ct = (ClassTable)ois.readObject(); /* 「授業の情報」を表示する */ ct.showData(); }// エラーが起こったらエラーメッセージを表示する catch(Exception e){System.out.println("エラーが発生したのでプログラムを終了します");} } } |
リンク: <講座1・その2(4)> |--------------------------|--------------------------| <サーバ用プログラム> <クライアント用プログラム> <時間割を定義するプログラム>