In my app I have two classes:
public class A
{
public final int value;
A(int value)
{
this.value = value;
}
}
public class Mutable_A
{
public int value;
A(int valule)
{
super(a);
this.value = value;
}
}
and in the code I do this:
A a = new Mutable_A(50);
...
((Mutable_A) a).value = 60;
...
if (A.value == 60)
{
print "I'm 60";
} else {
print "I'm 50";
}
Theorically a.value
is 60
, but due to I declare a
as a A
variable (instead of a Mutable_A
variable), the value of a.value
is 50
.
Is there a way to correct this?