tipo de retorno covariantes en Java

Aprender: ¿Cuál es tipo covariante class en Java ? A continuación, vamos a aprender sobre el tipo covariante return en detalle y lo que es la utilización de tipo covariante return?

covariante return escriba

El covariante tipo return es que tipo return que puede variar en padre y return niño (o subclase).

Antes JDK5 Java no soporta covariante class tipo que significa (madre de tipo return y return niño debe ser el mismo).

En JDK5 en adelante es compatible con Java covariante tipo return que significa (madre de tipo return y return niño puede variar si se define).

El covariante tipo return es útil en el reemplazo de métodos cuando reemplazar un método en el return derivado (o subclase) y luego class tipo puede variar dependiendo de JDK (Antes de tipo JDK5 return debe ser el mismo y después o JDK5 podemos considerar tipo return puede variar).

Ejemplo -1

class ParentClass1{
int a=10,b=20;
public int sum(){
return a+b;
}
}
class ChildClass1 extends ParentClass1{
int c=30, d=40;
public int sum(){
return (c+d);
}
public static void main(String[] args){
ChildClass1 cc1 = new ChildClass1();
ParentClass1 pc1 = new ParentClass1();
int e = cc1.sum();
int f = pc1.sum();
System.out.println("Child class Sum is :"+e);
System.out.println("Parent class Sum is :"+f);
}
}

salida

D:Java Articles>java ChildClass1
Child class Sum is :70
Parent class Sum is :30

Ejemplo -2

class ParentA {}
class ChildB extends ParentA {}
class Base
{
ParentA demoA()
{
System.out.println("Base class demo");
return new ParentA();
}
}
class Subclass extends Base
{
ChildB demoB()
{
System.out.println("Subclass demoB");
return new ChildB();
}
}
class MainClass
{
public static void main(String args[])
{
Base b = new Base();
b.demoA();
Subclass sub = new Subclass();
sub.demoB();
}
}

salida

D:Java Articles>java MainClass
Base class demo
Subclass demoB


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *