You can achieve it with method overloading and a copy constructor:
public class Vector3dPlus extends Vector3d {
public Vector3dPlus(Vector3d vector) {
super( ... ); // parameters from vector
}
// rest of your Vector3dPlus code
}
and in your test class, overload the method:
public class Test {
public static void useExtraMethod(Vector3d vector) {
useExtraMethod(new Vector3dPlus(vector));
}
public static void useExtraMethod(Vector3dPlus plus){
System.out.println(plus.extraMethod());
}
public static void main(String[] args) {
Vector3d basic=new Vector3d(1,2,3);
useExtraMethod(basic); // this line works now
}
}