Head First Java 第2版
頭とからだで覚えるJavaの基本
(オライリージャパン)
Kathy Sierra (著) Bert Bates (著) 島田 秋雄(監修)
神戸 博之 (監修) 高坂 一城 (監修) 夏目 大 (翻訳)
開発環境
- OS X Mavericks - Apple(OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- Java (プログラミング言語)
- javac (コンパイラ)
- java (application launcher)
Head First Java 第2版 ―頭とからだで覚えるJavaの基本(Kathy Sierra (著)、Bert Bates (著)、島田 秋雄 (監修)、神戸 博之 (監修)、高坂 一城 (監修)、夏目 大 (翻訳)、オライリージャパン)の15章(ネットワークとスレッド)、自分で考えてみよう(p.482)を解いてみる。
自分で考えてみよう(p.482)
コード(BBEdit, Emacs)
DungeonTest.java
import java.io.*; import java.net.*; public class Sample482 { public static void main(String [] args) { Sample482 sample = new Sample482(); sample.go(); } public void go() { try { // まだサーバー側は出来てない Socket s = new Socket("127.0.0.1", 5000); InputStreamReader streamReader = new InputStreamReader(s.getInputStream()); BufferedReader reader = new BufferedReader(streamReader); String message = reader.readLine(); System.out.println(message); reader.close(); } catch (IOException ex) { ex.printStackTrace(); } try { // 無効なIPアドレス Socket s = new Socket("IPアドレス", 5000); PrintWriter writer = new PrintWriter(s.getOutputStream()); writer.println("Hello, server!"); writer.close(); } catch (IOException ex) { ex.printStackTrace(); } } }
入出力結果(Terminal)
$ javac Sample482.java && java Sample482 java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:382) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:241) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:228) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:431) at java.net.Socket.connect(Socket.java:527) at java.net.Socket.connect(Socket.java:476) at java.net.Socket.<init>(Socket.java:373) at java.net.Socket.<init>(Socket.java:187) at Sample482.go(Sample482.java:13) at Sample482.main(Sample482.java:7) java.net.UnknownHostException: IPアドレス at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:223) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:431) at java.net.Socket.connect(Socket.java:527) at java.net.Socket.connect(Socket.java:476) at java.net.Socket.<init>(Socket.java:373) at java.net.Socket.<init>(Socket.java:187) at Sample482.go(Sample482.java:26) at Sample482.main(Sample482.java:7) $
0 コメント:
コメントを投稿