// file:    counter.java
// author:  Robert Keller
// purpose: Very simple mutable Java class


class counter
{
private int value;                      // value of the count
private int mx;                         // maximum value

static int number = 0;                  // number of counters constructed

counter(int initial)                    // constructor
  {
  value = initial;
  mx = initial;
  number++;
  }


int up()
  {
  value++;
  if( value > mx ) mx = value;
  return value;
  }

int down()
  {
  value--;
  return value;
  }

int max()
  {
  return mx;
  }

static public void main(String[] arg)
  {
  counter c, d, f;                                      // declare counters

  c = new counter(0);
  d = new counter(0);
  f = d;

  c.up();
  c.down();
  System.out.println(c.max());

  d.up();
  d.up();
  d.down();
  d.down();
  System.out.println(d.max());

  System.out.println(f.max());

  System.out.println(counter.number + " counters created");
  }

}




