Here is my code:
for (DrawableEntity entity : drawableEntityList) {
if (entity instanceof Beam) {
(Beam) entity.age += timeElapsed;
}
else if (entity instanceof Block) {
}
}
Basically drawableEntityList is a Vector of DrawableEntitys, and I want to iterate through everything in the Vector. Then depending on if they are subclass Beam or subclass Block I want to do something different.
The problem is that I'm trying to change a variable that only the subclasses have, I figured I could cast with (Beam) but it doesn't work.
Is it not possible to cast a parent class to a child class?
Your casting syntax is not right.
Try this
if (entity instanceof Beam) {
((Beam) entity).age += timeElapsed;
}
else if (entity instanceof Block) {
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With