Well, maybe this is a stupid question. But I'm just wondering if this can be done in java.
abstract public class ParentClass<T> {
abstract public T getTest();
}
in subclass
public class SubClass extends ParentClass<MyObject> {
public MyObject getTest() {
return null;
}
}
My question is: can I return a class type in a child method? I mean, can this be done by adding some code to the ParentClass, so I can do it below?
for instance
public class Sub1Class extends parentClass<Object1> {
public Object1 getTest() { }
public Sub1Class getItClassObject() { }
}
another example
public class Sub2Class extends parentClass<Object2> {
public Object2 getTest() { }
public Sub2Class getItClassObject() { }
}
one example again
public class Sub3Class extends parentClass<Object3> {
public Object3 getTest() { }
public Sub3Class getItClassObject() { }
}
if you see, the getItClassObject method in Sub1Class, Sub2Class and Sub3Class will follow its class. But I don’t want to add the same method for each subclass, I just want to add some code (if possible) in ParentClasss, so in the subclass I can just call getItClassObject directly without writing all the code in each subclass.
Usually I add a method to ParentClass as follows.
abstract public class ParentClass<T> {
abstract public T getTest();
public Object getItClassObject() { }
}
, : (
Sub1Class sub1Class = new Sub1Class();
Sub1Class after1Cast = (Sub1Class) sub1Class.getItClassObject();
Sub2Class sub2Class = new Sub2Class();
Sub2Class after2Cast = (Sub2Class) sub2Class.getItClassObject();
, java. , .