将子类存储在同一文本文件中,然后检索它们

时间:2017-12-29 04:38:05

标签: java oop file-handling

我正在制作板球锦标赛管理系统。我有一个名为 Player 的班级和两个子班级 Batsman Bowler Player 类具有以下数据成员:

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

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

我在Player类中有一个abstract addRecord方法,它在Batsman和Player类中都有实现。我希望为这两个子类使用一个公共文件,以便 ID不会在文件中重复
然后我可以根据需要从文件中仅检索Batsman或者只有Bowler的记录,并从中生成一系列Batsman或Bowler对象。

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

请帮忙!

1 个答案:

答案 0 :(得分:0)

这可能是你的开始:

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/