// Clase principal
public class Principal {
public static void main(String[] args) {
Unidad soldado = new Soldado();
Unidad escudo = new Escudo(soldado);
Unidad espada = new Espada(escudo);
Unidad unidad = espada.suprimir(escudo);
System.out.println(espada.suprimir(escudo));
}
}
// Clase unidad
public class Unidad {
public void combate() {
}
public Unidad suprimir(Unidad c) {
c = null;
return c;
}
}
// Clase soldado
import java.util.Scanner;
public class Soldado extends Unidad {
private String nombre;
public Soldado() {
System.out.print("Se ha creado un soldado\nIngrese el nombre: ");
Scanner scan = new Scanner(System.in);
this.nombre = scan.nextLine();
}
public void combate() {
}
public String getNombre() {
return this.nombre;
}
}
// Clase complemento
public class Complemento extends Unidad {
String tipo;
int posicion;
public void combate() {
}
public Unidad suprimir(Unidad c) {
c = null;
return c;
}
}
// Clase espada
import java.util.Scanner;
public class Espada extends Complemento {
String nEspada;
public Espada(Unidad escudo) {
System.out.print("Ingresa el nombre de la espada para agregar: ");
Scanner scan = new Scanner(System.in);
this.nEspada = scan.nextLine();
}
public void combate() {
}
}
// Clase escudo
import java.util.Scanner;
public class Escudo extends Complemento {
String nEscudo;
public Escudo(Unidad soldado) {
System.out.print("Ingresa el nombre del escudo para agregar: ");
Scanner scan = new Scanner(System.in);
this.nEscudo = scan.nextLine();
}
public void combate() {
}
}