Hashset Java como serializar vários objetos

Fiz uma pergunta anterior sobre como salvar vários arquivos salvos em um arquivo .ser e me sugeriram usar um hashset porque eles são serializáveis. Eu tentei escrever um pedaço de código de teste para serializar todas as informações dentro do conjunto de hash:

public class testHashSet {
    public static void main(String[] args) throws ClassNotFoundException {
        testClass new1 = new testClass("Hello", "male", true);
        testClass new2 = new testClass("Goodbye", "female", true);
        testClass new3 = new testClass("Something", "other", false);
        HashSet<testClass> hSet = new HashSet<testClass>();
        hSet.add(new1);
        hSet.add(new2);
        hSet.add(new3);
        System.out.println(hSet);
        for(int i = 0; i < hSet.size(); i++) {
            try {
                FileOutputStream fileOut = new FileOutputStream("/Users/Prodigy958/Desktop/Hack_exeSaves.ser");
                ObjectOutputStream out = new ObjectOutputStream(fileOut);
                out.writeObject(hSet(i));
                out.close();
                fileOut.close();
            } catch(IOException i) {
                i.printStackTrace();
            }
        }
    }
}

No entanto, estou tendo problemas para obter o código para escrever o objeto com o índice (i), porque diz que esse método não está definido para o tipoHashSet. Existe uma maneira de percorrer todas as informações no conjunto de hash ou devo serializar o conjunto inteiro de uma só vez. Uma pergunta adicional é que, se a primeira resposta for a última, como eu desserializaria os dados em classes separadas?

questionAnswers(1)

yourAnswerToTheQuestion