以纯文本格式序列化和反序列化

Serializing and Deserializing in Plain Text Format

我正在制作板球锦标赛管理系统。我有一个名为 Player 的 class 和两个 child classes BatsmanBowlerPlayer class 有以下数据成员:

private String name;
private int ID;
private int age;
private int height;

现在 Batsman class 有 Batsman 特定成员,Bowler class 有一些 Bowler 特定成员。

我在 Player class 中有一个 abstract addRecord 方法,它在 Batsman 和 Player class 中都实现了。我希望对 child class 使用一个公共文件,这样 ID 在文件 .
中不会重复 然后我可以根据需要从文件中仅检索击球手或投球手的记录,并从中创建一个击球手或投球手数组 objects。

有没有办法使用 Class.forName() 然后在运行时使用包含 class 名称的字符串动态创建 class 的实例。

请帮忙!

这对你来说可能是一个开始:

public class IdCounter {

    private static Integer nextId;

    static int getNextId(){
        if (nextId == null){
            //read file and get highest ID
        }
        return nextId++;
    }
}


public class addRecord {

    private String name;
    private int ID;
    private int age;
    private int height;

    private void saveRecord(){
        if(ID==0){
            ID = IdCounter.getNextId();
        }
    }
}

如果您使用UI,您可能需要一个线程保存解决方案,带锁... http://winterbe.com/posts/2015/04/30/java8-concurrency-tutorial-synchronized-locks-examples/