以纯文本格式序列化和反序列化
Serializing and Deserializing in Plain Text Format
我正在制作板球锦标赛管理系统。我有一个名为 Player
的 class 和两个 child classes Batsman
和 Bowler
。 Player
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/
我正在制作板球锦标赛管理系统。我有一个名为 Player
的 class 和两个 child classes Batsman
和 Bowler
。 Player
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/