Wie kann ich festlegen, dass ein Attribut maximal den Wert 0 erreicht, also nicht in den negativen Bereich fällt?

In du bei der jeder Zuweisung überprüfst, dass der Wert nicht kleiner 0 ist - und falls ein Wert kleiner 0 zugewiesen wird, dann was sinnvolles tut.

Wenn der Wert nur über eine set-Methode geändert werden kann, hast du auch genau eine Stelle die du anpassen musst.
 
da java nicht die möglichkeit mit unsigned und signed zu arbeiten wie C musst du immer mit ifs die abfragen bauen dass der nich kleiner wird
und nein
so ein if ob ne zahl kleiner 0 ist wird nicht deine Laufzeit signifikant erhöhen
 
In Java SE 8 und später kann man den Datentyp int verwenden, um eine vorzeichenlose 32-Bit-Ganzzahl darzustellen, die einen Mindestwert von 0 und einen Höchstwert von 2^32-1 hat. - siehe https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html und https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html
int-Variablen sind bei der Deklaration immer noch vorzeichenbehaftet, aber vorzeichenlose Arithmetik ist jetzt durch die Verwendung der entsprechenden Methoden in der Klasse Integer möglich.
 

Zurück
Oben