public class PersonenVerwaltung
{
	public static void main (String[]args)
	{		
		Student[]studenten = new Student[10];
		Angestellte[]angestellte = new Angestellte[10];
		Person[]person= new Person [10];
				
		System.out.println("Sie haben "+(Angestellte.getCount()+Student.getCount())+" Mitarbeiter.");
		System.out.println("Initializing Database... please stand by...");
		System.out.println("");
		
		studenten[0] = new Student("Baader", "Andreas", "R1968AF", "Frankfurt");
		studenten[2] = new Student("Ensslin", "Gudrun", "RAF1968", "Berlin");
		studenten[1] = new Student("Baader", "Andreas", "R1968AF", "Frankfurt");
		
		angestellte[0] = new Angestellte("Hoffmann", "Albert", 543210, "Chemiker");
		try
		{
			angestellte[1] = new Angestellte("Newton", "Isaac", -345678, "Physiker");
		}
		catch (IllegalArgumentException iae)
		{
			System.out.println("Probleme bei der Datenerfassung!"+iae.getMessage());
		}	
		person[0] = new Person("Cartman", "Eric");
		person[1] = new Person("Baader", "Andreas");
		
		System.out.println("Studenten: "+Student.getCount()+ "" );
		System.out.println("Angestellte: "+Angestellte.getCount()+"");
		System.out.println("Alle Personen: "+Person.getCount()+"");
		System.out.println("");
		
		System.out.println("Die Studenten sind:");		
		for (int i=0; i<Student.getCount(); i++)
		{
//			System.out.println(""+studenten[i].getVorname()+" "+studenten[i].getName()+", MatrikelNr: "+studenten[i].getMatrikel()+", Studienort: "+studenten[i].getStudienOrt());
			System.out.println(""+studenten[i].toString());
	
		}		
		System.out.println("");
		System.out.println("Die Angestellten sind:");		
		for (int i=0; i<Angestellte.getCount(); i++)
		{
//			System.out.println(""+angestellte[i].getVorname()+" "+angestellte[i].getName()+", Gehalt: "+angestellte[i].getGehalt()+", Beruf: "+angestellte[i].getBeruf());
			System.out.println(""+angestellte[i].toString());	
		}		
		System.out.println("");
		System.out.println("Die übrigen Personen sind:");		
		for (int i=0; i<(Person.getCount()-Angestellte.getCount()-Student.getCount()); i++)
		{
//			System.out.println(""+person[i].getVorname()+" "+person[i].getName());
			System.out.println(""+person[i].toString());
		}
//		System.out.println("");		
//		System.out.println("Andreas Baader wechselt die Uni.");
//		studenten[0].setMatrikel("H19AFT");
//		studenten[0].setStudienOrt("Stuttgart");					
//		System.out.println("Albert Hoffmann bekommt eine Gehaltserhöhung.");
		try
		{
			angestellte[0].setGehalt(-789876.52);
		}
		catch (IllegalArgumentException iae)
		{
			System.out.println("Probleme bei der Gehaltsänderung"+iae.getMessage());
		}		
		System.out.println("");
		System.out.println("aktualisiere Datenbank...");
		System.out.println("Studenten: "+Student.getCount()+ "" );
		System.out.println("Angestellte: "+Angestellte.getCount()+"");
		System.out.println("Alle Personen: "+Person.getCount()+"");
		System.out.println("");
		System.out.println("Die Studenten sind:");		
		for (int i=0; i<Student.getCount(); i++)
		{
//			System.out.println(""+studenten[i].getVorname()+" "+studenten[i].getName()+", MatrikelNr: "+studenten[i].getMatrikel()+", Studienort: "+studenten[i].getStudienOrt());
			System.out.println(""+studenten[i].toString());
		}		
		System.out.println("");
		System.out.println("Die Angestellten sind:");		
		for (int i=0; i<Angestellte.getCount(); i++)
		{
//			System.out.println(""+angestellte[i].getVorname()+" "+angestellte[i].getName()+", Gehalt: "+angestellte[i].getGehalt()+", Beruf: "+angestellte[i].getBeruf());
			System.out.println(""+angestellte[i].toString());
		}		
		System.out.println("");
		System.out.println("Die übrigen Personen sind:");		
		for (int i=0; i<(Person.getCount()-Angestellte.getCount()-Student.getCount()); i++)
		{
			System.out.println(""+person[i].toString());
		}	
		
		System.out.println("stud[0] = stud[1]? "+studenten[0].equals(studenten[1]));
		System.out.println("Pers[0] = stud[1]? "+person[0].equals(studenten[1]));
		System.out.println("Stud[0] = pers[1](gleiche Namen)? "+studenten[0].equals(person[1]));
		System.out.println("Pers[1] = stud[0](gleiche Namen)? "+person[1].equals(studenten[0]));
		System.out.println("Ang[0] = stud[1]? "+angestellte[0].equals(studenten[1]));
		System.out.println("stud[0] = ang[1]? "+studenten[1].equals(angestellte[0]));	
		System.out.println("Ang[0] = pers[1]? "+angestellte[0].equals(person[1]));
		System.out.println("pers[1] = ang[0]? "+person[1].equals(angestellte[0]));
	}	
}	