[log in to unmask] wrote:
> Another problem is Java's lack of information hiding (though you *can* get the
> same problem in Ada, it's more difficult)
> viz in the code fragment,
> a = 1;
> b = a;
> a = a+1;
> what does b equal?
> In Java:
> if b is the primitive "int", then b=a-1
> if b is the class "Integer" then b = a means in Ada terms b renames a. For which
> we can thank C.
But b must have been a primitive, because operators only work for primitives
(except for "+" for catenating Strings).
Have I missed something?
> If b is a primitive, you can't do text output of it.
int b = 5;
System.out.println ("" + b);
// this prints a line with a 5 on it