Em Java, é possível substituir métodos se os tipos de retorno forem respectivamente uma primitiva e sua classe de wrapper?
Enquanto trabalhava com a idéia de substituir e substituir métodos em Java, observei que há flexibilidade para os tipos de retorno de tais métodos.
Aqui está um pouco da teoria: "O tipo de retorno de um método de substituição na classe derivada pode ser o mesmo ou uma subclasse do tipo de retorno do método de substituição na classe base. O tipo de retorno de um método de substituição é conhecido como um tipo de retorno covariante ".
O exemplo abaixo supõe que B estenda A.
Method in A:
public Object some_method() {....}
Method in B:
public Integer some_method() {....}
Então, vemos que some_method () em B substitui some_method () em A, pois Integer é uma subclasse de Object.
Gostaria de saber se a seguinte flexibilidade existe e se o seguinte funcionará corretamente devido aboxe automático edesembalagem:
Method in A:
public Integer some_method() {....}
Method in B:
public int some_method() {....}
OU
Method in A:
public int some_method() {....}
Method in B:
public Integer some_method() {....}