Allora per prima cosa quando posti il codice usa i tag code come descritto nel regolamento.
Il problema sta nel metodo check2 che dovrebbe controllare appunto la corretta associazione tra matricola e password.
Per come hai dichiarato il metodo esso ritorna sempre true anche in caso la password sia errata
codice:
private boolean check2()
	{
		for (int i = 0; i < mm.getIscritti(); i++)
		{

			if (getMatr().getText().equals(mm.getIscritto(i).getMatricola()))
			{
				//errore.setText("Password errata");

				if (getPass().getText().equals(mm.getIscritto(i).getPassword()))
				{
					errore.setText(mm.getIscritto(i).getMatricola() + "Registrato! Ore: " + fo.getSelectedItem());

					return true;
				}
			}
		}
                //Se arrivo qui vuol dire che o la matricola o la password è errata
                //return true;
		return false;

	}
Per come ho implementato adesso il metodo esso ti dice solo che o la matricola o la password è errata. Ovviamente se vuoi sapere se è la matricola sbagliata o la password devi rivedere la logica dei controlli del metodo.