Ich habe folgendes Video, wo um die 54. Minute das Phänomen Variablenüberlauf erklärt wird.
Demnach sollte Folgendes möglich sein:
In meinem Java-Editor bekomme ich einen Error, dass die Typen inkompatibel sind ("error: incompatible types: possible lossy conversion from int to byte") und Eclipse weigert sich sogar den entsprechenden Quellcode auszuführen. Hier müsste ich die Zeilen ändern:
Dann bekomme ich das, was ich im Video sehe.
Hat sich inzwischen bei Java etwas getan, um einen Variablenüberlauf zu verhindern? Könnt ihr mir ganz kurz sagen, warum der Quellcode aus dem Video nicht mehr funktioniert?
Demnach sollte Folgendes möglich sein:
Java:
public class VariablenUeberlauf {
public static void main (String[] args) {
byte b = 126;
byte a = 1;
System.out.println(b);
b = b + a;
System.out.println(b);
b = b + a;
System.out.println(b);
b = b + a;
}
}
In meinem Java-Editor bekomme ich einen Error, dass die Typen inkompatibel sind ("error: incompatible types: possible lossy conversion from int to byte") und Eclipse weigert sich sogar den entsprechenden Quellcode auszuführen. Hier müsste ich die Zeilen ändern:
b = (byte) (b + a);
Dann bekomme ich das, was ich im Video sehe.
Rich (BB-Code):
126
127
-128