这是我的第四篇文章面向对象实现通讯录系统Contact类java123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869import java.io.Serializable;class Contaxt implements Serializable { int id; String name; String tel; String address; boolean flag; public Contaxt(int id, String name, String tel, String address) { this.id = id; this.name = name; this.tel = tel; this.address = address; flag = false; } public boolean getFlag() { return flag; } public void setFlag(boolean flag) { this.flag = flag; } public void setId(int id) { this.id = id; } public void setName(String name) { this.name = name; } public void setTel(String tel) { this.tel = tel; } public void setAddress(String address) { this.address = address; } public int getId() { return id; } public String getName() { return name; } public String getTel() { return tel; } public String getAddress() { return address; } @Override public String toString() { return "Contaxt{" + "id=" + id + ", name='" + name + '\'' + ", tel='" + tel + '\'' + ", address='" + address + '\'' + '}'; }} AddressBookjava123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143import java.io.*;import java.util.ArrayList;import java.util.Scanner;public class AddressBook { ArrayList<Contaxt> contaxts = new ArrayList<>(); public void addContaxt() { System.out.println("请输入姓名:"); Scanner sc = new Scanner(System.in); String name = sc.next(); System.out.println("请输入电话:"); String tel = sc.next(); System.out.println("请输入地址:"); String address = sc.next(); int id = contaxts.size() == 0 ? 1 : contaxts.get(contaxts.size()-1).getId() + 1; Contaxt contaxt = new Contaxt(id,name,tel,address); contaxts.add(contaxt); System.out.println("添加成功"); System.out.println(contaxt); save(); } public void showAll() { for ( Contaxt contaxt : contaxts) { if(contaxt.getFlag()==false) System.out.println(contaxt); } } public void searchID() { System.out.println("请输入ID:"); Scanner sc = new Scanner(System.in); int id = sc.nextInt(); for (Contaxt contaxt:contaxts) { if(id == contaxt.id && contaxt.getFlag() == false) { System.out.println(contaxt); return ; } } System.out.println("ID:"+id+" 不存在"); } public void deleteID() { System.out.println("请输入ID:"); Scanner sc = new Scanner(System.in); int id = sc.nextInt(); for (Contaxt contaxt:contaxts) { if(id == contaxt.id && contaxt.getFlag() == false) { System.out.println("已删除"); System.out.println(contaxt); contaxt.setFlag(true); save(); return ; } } System.out.println("ID:"+id+" 不存在"); } public void changeID() { System.out.println("请输入ID:"); Scanner sc = new Scanner(System.in); int id = sc.nextInt(); for (Contaxt contaxt:contaxts) { if(id == contaxt.id && contaxt.getFlag() == false) { System.out.println(contaxt); int op = sc.nextInt(); System.out.println("请输入姓名:"); String name = sc.next(); contaxt.setName(name); System.out.println("请输入电话:"); String tel = sc.next(); contaxt.setTel(tel); System.out.println("请输入地址:"); String address = sc.next(); contaxt.setAddress(address); System.out.println("修改成功"); System.out.println(contaxt); save(); return ; } } System.out.println("ID:"+id+" 不存在"); } public void save() { ObjectOutputStream objectOutputStream = null; try { objectOutputStream = new ObjectOutputStream( new FileOutputStream("C:\\Users\\Lenovo\\IdeaProjects\\通讯录系统\\src\\data.txt")); objectOutputStream.writeObject(contaxts); } catch (Exception e) { e.printStackTrace(); } finally { try { objectOutputStream.close(); } catch (IOException e) { e.printStackTrace(); } } } public void init(){ ObjectInputStream objectInputStream = null; try { objectInputStream = new ObjectInputStream( new FileInputStream("C:\\Users\\Lenovo\\IdeaProjects\\通讯录系统\\src\\data.txt")); ArrayList<Contaxt> data = (ArrayList<Contaxt> )objectInputStream.readObject(); contaxts = data; } catch (Exception e) { e.printStackTrace(); } finally { try { objectInputStream.close(); } catch (Exception e){ e.printStackTrace(); } } }} TextDemojava12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849import java.util.Scanner;import static java.lang.System.exit;public class TextDemo { public static void main(String[] args) { AddressBook MyBook = new AddressBook(); MyBook.init(); while(true) { System.out.println("1.添加联系人"); System.out.println("2.删除联系人"); System.out.println("3.修改联系人"); System.out.println("4.查找联系人"); System.out.println("5.查看所有联系人"); System.out.println("6.退出"); Scanner sc = new Scanner(System.in); int op = sc.nextInt(); switch (op) { case 1: MyBook.addContaxt(); break; case 2: MyBook.deleteID(); break; case 3: MyBook.changeID(); break; case 4: MyBook.searchID(); break; case 5: MyBook.showAll(); break; case 6: System.out.println("退出"); System.exit(0); default: System.out.println("输入错误"); } } }}