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 (著)、島田 秋雄 (監修)、神戸 博之 (監修)、高坂 一城 (監修)、夏目 大 (翻訳)、オライリージャパン)の14章(シリアライゼーションとファイルI/O)、エクササイズ(プログラミングマグネット(p.467))を解いてみる。
エクササイズ(プログラミングマグネット(p.467))
コード(BBEdit, Emacs)
DungeonTest.java
import java.io.*;
class DungeonTest {
public static void main(String [] args) {
DungeonGame d = new DungeonGame();
System.out.println(d.getX() + d.getY() + d.getZ());
try {
FileOutputStream fos = new FileOutputStream("dg.ser");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(d);
oos.close();
} catch (Exception e) {
e.printStackTrace();
}
try {
FileInputStream fis = new FileInputStream("dg.ser");
ObjectInputStream ois = new ObjectInputStream(fis);
d = (DungeonGame) ois.readObject();
ois.close();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(d.getX() + d.getY() + d.getZ());
}
}
class DungeonGame implements Serializable {
public int x = 3;
transient long y = 4;
private short z = 5;
int getX() {
return x;
}
long getY() {
return y;
}
short getZ() {
return z;
}
}
入出力結果(Terminal)
$ javac DungeonTest.java && java DungeonTest 12 8 $
0 コメント:
コメントを投稿