author | Jaroslav Tulach <jaroslav.tulach@apidesign.org> |
Fri, 03 Apr 2020 16:32:36 +0200 | |
changeset 416 | 9ed8788a1a4e |
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