Salvar na Lista

Gostaria apenas de salvar o nome e curso na lista. Porém, quando o pograma reinicia, eu perco as variaveis. Como eu consigo resolver isso?

package w3schoolspackage;

import java.util.ArrayList;

public class School {
  ArrayList<School> alunos = new ArrayList<>();
  String c;
  String n;
  
  public School(String n, String c) {
    super();
    this.n = n;
    this.c = c;
  } // aqui tbm contem hash,equals e toString
package w3schoolspackage;

import java.util.ArrayList;
import java.util.Scanner;
import java.time.LocalDate;

public class SchoolTeste {
  
  public static void main(String[] args) {
    int escolha;
    
    do {
      Scanner ler = new Scanner(System.in);
      System.out.println(" Qual seu nome ? ");
      String Nom = ler.next();
      
      System.out.println(" Qual o nome do curso ? ");
      String Cur = ler.next();
      
      ArrayList<School> alunos = new ArrayList<>();
      alunos.add(new School(Nom, Cur));
      alunos.forEach(System.out::println);
      
      System.out.println("\n você quer adicionar mais pessoas 1-Sim ou 2-Não");
      escolha = ler.nextInt();
    } while (escolha == 1);

Os teus dados só existem em memória, enquanto o programa está em execução. Quando terminas e reinicias novamente, nada ficou guardado.
Se precisas de persistência de dados, podes usar ficheiros ou base de dados. Como me parece que está numa fase muito inicial, diria que ler e escrever para ficheiro de texto é um bom ponto de partida.

Bom dia , muito obrigado pela dica mas…
Como assim ficheiro de texto? não compreendi.