class Test {
private int value = 3;
public int getAndIncrementByTwo() {
int v = value;
value += 2;
return v;
}
}
class Test {
private int value = 3;
public int getAndIncrementByTwo() {
try {
return value;
} finally {
value += 2;
}
}
}
class Test {
private AtomicInteger val = new AtomicInteger(3);
public int getAndIncrementByTwo() {
return val.getAndAdd(2);
}
}
public class Things {
final static int GAIN = 2;
final static int GAIN_ON_START = 3;
static int counter = 3;
public Things() {
}
public void gainCounter()
{
counter += Things.GAIN;
}
public void resetCounter()
{
counter = Things.GAIN_ON_START;
}
public int getCounterInfo()
{
return counter;
}
}
package beispiel;
public class Beispiel {
public static void main(String[] args) {
Things things = new Things();
things.gainCounter();
System.out.println(things.getCounterInfo());
things.resetCounter();
System.out.println(things.getCounterInfo());
things.gainCounter();
things.gainCounter();
System.out.println(things.getCounterInfo());
}
}
/** Konsolenausgabe */
5
3
7
Warum statisch?Schlüsselwort: statische Variablen
Ja warum eigentlich? Stimmt, es würde auch ohne gehen. Erinnere mich gelesen zu haben, dass man statische Variablen für solche Zwecke einsetzt. Aber jetzt, wo du es schreibst, ergibt es irgendwie wenig Sinn!Warum statisch?
Mit den Konstanten ist das OK, aber der Counter muss nicht sein!Ja warum eigentlich? Stimmt, es würde auch ohne gehen. Erinnere mich gelesen zu haben, dass man statische Variablen für solche Zwecke einsetzt. Aber jetzt, wo du es schreibst, ergibt es irgendwie wenig Sinn!