0

プライベート フィールドとパブリック メソッドを持つクラスがあります。私のメソッドは get/set 命名規則に従います。フィールドがプライベートで、オブジェクト データを XML ファイルに書き込もうとすると、空の XML ファイルが生成されますが、それらをパブリックに変更すると、XML に必要なデータがすべて含まれます。これは何が原因だと思いますか?

public class ClassData {

private String name;
private ArrayList<String> methods;

public ClassData()
{
    methods = new ArrayList<>();
}

public void setName(String cName)
{
    name = cName;
}

public String getName()
{
    return name;
}

public void setMethods(String mName)
{
    methods.add(mName);    
}

public ArrayList<String> getMethods()
{
    return methods;
}

}

String fileName = cObj.getName() + ".xml";

XMLEncoder enc=null;

try{
    enc=new XMLEncoder(new BufferedOutputStream(new FileOutputStream(fileName)));
}catch(FileNotFoundException fileNotFound){
    System.out.println("Unable to save file.");
}

enc.writeObject(cObj);
enc.close();
4

1 に答える 1