As shown below :
Method to be overriden:
double add (int a ,int b){
}
Method overridding above method:
int add(int a,int b){
}
With primitive types it is not possible, but there is a feature added to JDK 1.5 called covariant return types . So, using this feature, a subclass could return a more specific type than the one declared on the parent class.
The following code compiles fine in JDK 1.7
public static class A {
Number go() { return 0; };
}
public static class B extends A {
@Override
Integer go() { return 0; }
}
No, you cannot change the return type. You can overload a method by providing alternate or additional input.
ie
int add(int a, int b, int c)
另一种解决方案是使基类型为参数化类型,并在扩展或实例化时声明返回类型。
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.