samples/sidemeanings/src/org/apidesign/sidemeanings/Protected.java
author Jaroslav Tulach <jaroslav.tulach@apidesign.org>
Thu, 30 Oct 2014 21:30:10 +0100
changeset 409 40cabcdcd2be
parent 99 4bf599099de7
permissions -rw-r--r--
Updating to NBMs from NetBeans 8.0.1 as some of them are required to run on JDK8
     1 package org.apidesign.sidemeanings;
     2 
     3 public abstract class Protected {
     4     int counter;
     5 
     6     Protected() {}
     7 
     8     protected void increment() {
     9         counter++;
    10     }
    11 
    12     public final void incrementTenTimes() {
    13         for (int i = 0; i < 10; i++) {
    14             increment();
    15         }
    16     }
    17 
    18     public final void assertCounter(int expected) {
    19         assert expected == counter : "Expected " + expected + " but was " + counter;
    20     }
    21 
    22     
    23     public static class Dirty extends Protected {
    24         // BEGIN: sidemeanings.Protected.Dirty
    25         protected void increment() {
    26             // implementation:
    27             counter++;
    28         }
    29         // END: sidemeanings.Protected.Dirty
    30     }
    31     
    32     
    33     public static abstract class Clean extends Protected {
    34         // BEGIN: sidemeanings.Protected.Clean
    35         protected abstract void increment();
    36         protected final void defaultIncrement() {
    37             counter++;
    38         }
    39         // END: sidemeanings.Protected.Clean
    40     }
    41 }