Say I have the following classes
public abstract class Parent {
    public Parent() {
    
        //stuff here
    
    }
}
public class Child extends Parent {
    public Child() {
    
        //stuff here
    
    }
    public void doSomething() {
    
    }
}
Then I get an object from an array of Parents
public Parent[] parents = new Parent[5];
Parent tempParent = parents[0]
If this object is of the child class, I want to cast the tempParent into the child class in order to use "doSomething" without having to create a new object
if(tempParent.getClass == Child.class) {
    tempParent = (Child) tempParent;
    tempParent.doSomething();
}
This, however, does not work. I still get an error telling me that doSomething is not a function in the Parent class. Is there a way to do what I'm trying to do?
 
     
     
    