Pas de enfermant instance de type fbMain est accessible. Doivent être admissibles à l'allocation avec un enfermant instance de type fbMain
Donc, dans ma classe déclarée comme "public class pcb", j'ai le constructeur suivant: public pcb(int p, int a, int b).
Dans public static void main(String[] args) j'essaie d'appeler le constructeur dans une boucle for, où j'ai ajouter un "pcb" dans une position différente dans un tableau. Voici la boucle où la dernière ligne est l'endroit où j'obtiens l'erreur:
for(int i=0; i<numJob; i++){
pI = scan.nextInt();
arr = scan.nextInt();
bst = scan.nextInt();
notHere[i]=new pcb(pI, arr, bst);
}
Ce que je fais mal? Est-il de la syntaxe ou est-il de la structure de mon programme. Je n'ai pas utilisé de Java que beaucoup et je pense que c'est mon principal problème.
Vous avez oublié de nous montrer la
Double Possible de Java - Pas enfermer instance de type Foo est accessible
pcb
classe.Double Possible de Java - Pas enfermer instance de type Foo est accessible
OriginalL'auteur user7478 | 2012-03-06
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas donné tout le code, mais l'erreur indique que
pcb
est un intérieur de classe defbMain
:Vous pouvez corriger cette erreur en faisant
pcb
statique:Ou en déplaçant la classe de ses propres fichiers. Ou, si
pcb
ne peut pas être statique (car il est associé à une instance defbMain
), vous pouvez créer un nouveaupcb
en passant une instance defbMain
:Il est probable que le premier que vous voulez. Veuillez également noter que, par convention, de type Java, les noms commencent par une majuscule.
OriginalL'auteur Mark Peters
Ajouter
static
à votre déclaration de classe comme ceciOriginalL'auteur Guillaume Polet