author | Jaroslav Tulach <jaroslav.tulach@apidesign.org> |
Thu, 30 Oct 2014 21:30:10 +0100 | |
changeset 409 | 40cabcdcd2be |
permissions | -rw-r--r-- |
1 package org.apidesign.sidemeanings;
3 // BEGIN: sidemeanings.Mixed.Dirty
4 public abstract class MixedClass {
5 private int counter;
6 private int sum;
8 protected MixedClass() {
9 super();
10 }
12 public final int apiForClients() {
13 int subclass = toBeImplementedBySubclass();
14 sum += subclass;
15 return sum / counter;
16 }
18 protected abstract int toBeImplementedBySubclass();
20 protected final void toBeCalledBySubclass() {
21 counter++;
22 }
23 }
24 // END: sidemeanings.Mixed.Dirty