package memberclass1;

/**
 * Verwendung einer member class.
 * 
 * @author  Ralf Kunze (rkunze@uos.de), Institut fuer Informatik, Universitaet Osnabrueck
 * @date 21.05.2007
 */
public class Aussen {
	public int i;
	public String name;
	
	public Aussen(String name, int i) {
		this.name = name;
		this.i = i;
	}
	
	public String toString() {
		return name;
	}
	
	// Member class (packetsichtbar)
	class Innen {
		private String name;
		
		public Innen(String name) {
			this.name = name; 
		}
		
		public int getI() {
			return i; 	// Gleich zu Aussen.this.i
						// Zugriff auf die Instanzvariable i von dem Objekt
						// welches bei der Erzeugung des member class Objektes verwendet wurde
		}
		
		public String toString() {
			return Aussen.this.name + "." + name + " mit Wert i=" + i;
		}
	}
}
