📄 addressbooktest.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.io.*;
public class AddressBookTest
extends Frame
implements ActionListener
{
private Button add = new Button("Add");
private Button clear = new Button("Clear");
private Button save = new Button("Save");
private Button load = new Button("Load");
private Button quit = new Button("Quit");
private java.awt.List display = new java.awt.List(7);
private LinkedList data = new LinkedList();
private Address[] ADRS =
{
new Address("ABCD", "ABCD@x.y"),
new AddressPhone("XYZ", "XYZ@x.y", "1234")};
public AddressBookTest()
{
Panel buttons = new Panel();
buttons.setLayout(new FlowLayout());
buttons.add(add);
add.addActionListener(this);
buttons.add(clear);
clear.addActionListener(this);
buttons.add(save);
save.addActionListener(this);
buttons.add(load);
load.addActionListener(this);
buttons.add(quit);
quit.addActionListener(this);
setLayout(new BorderLayout());
add("Center", display);
add("South", buttons);
validate();
pack();
setVisible(true);
}
public void saveData()
{
try
{
ObjectOutputStream out = new ObjectOutputStream(
new FileOutputStream("addresses.dat"));
out.writeInt(data.size());
for (Iterator iterator = data.iterator(); iterator.hasNext(); )
{
out.writeObject(iterator.next());
}
out.close();
}
catch (IOException ioe)
{
System.err.println(ioe);
}
}
public void loadData()
{
try
{
ObjectInputStream in = new ObjectInputStream(
new FileInputStream("addresses.dat"));
int size = in.readInt();
clearData();
for (int i = 0; i < size; i++)
{
addData( (Address) in.readObject());
}
in.close();
}
catch (ClassNotFoundException cnfe)
{
System.out.println(cnfe);
}
catch (IOException ioe)
{
System.out.println(ioe);
}
}
public void addData(Address address)
{
data.add(address);
display.add(address.toString());
}
public void clearData()
{
data.clear();
display.removeAll();
}
public void actionPerformed(ActionEvent ae)
{
if (ae.getSource() == quit)
{
System.exit(0);
}
else if (ae.getSource() == add)
{
addData(ADRS[ (int) (ADRS.length * Math.random())]);
}
else if (ae.getSource() == save)
{
saveData();
}
else if (ae.getSource() == load)
{
loadData();
}
else if (ae.getSource() == clear)
{
clearData();
}
}
public static void main(String args[])
{
AddressBookTest ab = new AddressBookTest();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -