/**
Die Methode sum_max() liefert neben der Summe auch das
Maximum der beiden Operanden zurück.

Das Programm liefert folgende Ausgabe:

Summe = 22, Maximum = 12

*/
/*-----------------------------------------------------------------------*/

class ErgebnisParameter
{
   /**
   *  Berechnet Summe UND Maximum
   *  @param a erster Summand
   *  @param b zweiter Summand
   *  @param max Ergebnis-Parameter max(a,b)
   *  @return Summe von a und b
   */
   static long sum_max(long a, long b, Lang max)
   {  
      max.x = (a>b ? a : b);
      return a + b;
   }
   
   /**
   *  Testumgebung
   */
   public static void main(String[] argv)
   {
      long x = 10, y = 12, summe;
      Lang maximum = new Lang();
      summe=sum_max(x, y, maximum);
      System.out.println("Summe = " + summe + ", Maximum = " + maximum.x);
   }
}

/**
Hilfsklasse für "call by reference"; 
lediglich "Klassenkapsel" um primitiven Typ gelegt.
*/
class Lang
{  
   long x;
}
