[JAVA] Problème avec classe abstraite

Résolu
Bonjour,

J'ai un petit problème lié aux classes abstraites.

Voici ma classe abstraite :

public abstract class Soldat {
abstract void deplacement();
}

l'une des classes extends :

public class SoldatLancier extends Soldat{
int joueur;

public SoldatLancier(){}

public SoldatLancier(int j){
joueur=j;
}

void deplacement() {
}
}

Et voici ce que je fais dans mon main, je créé une matrice de Soldat puis mon premier lancier :
Soldat[][] plateau=null;
Soldat s = new SoldatLancier(1);

Et je veux intégrer mon petit bonhomme au plateau de jeu.
plateau[1][1]=s;

Et là mon plateau rejette mon SoldatLancier. Bref je n'arrive pas à résoudre le problème. Quelqu'un peut-il me dire ce qui ne va pas ?

4 réponses

  1. Essaye:

    public abstract class Soldat { 
        public abstract void deplacement(); 
    }  
    


    et puis

    public SoldatLancier(){} 
    //tu dois initialisé ton joueur ici ou en haut
    public SoldatLancier(int j){ 
    joueur=j; 
    } 
    
    @Override 
    public void deplacement() { 
    } 
    }  
    
    1. Bonjour,

      non hélas cela n'a pas fonctionné, je ne peux toujours pas intégrer mon SoldatLancier dans mon plateau.
      1. c'est quoi l'erreur exact..

        puis si possible poste tout ton code ici
    2. Modérateur
      Apparemment ton plateau n'est pas initialisé, tu dois avoir NullPointerException

      Essaye avec Soldat[][] plateau=new Soldat[5][5];
      1. Oui c'était bien cela KX, j'avais mal initialisé ma matrice, ça fonctionne à présent, merci beaucoup !