2009-11-25 7 views
1

J'ai 3 classes dont j'ai écrit une partie ci-dessous. Quand j'écris cette instruction dans la classe AddStudent, elle montre abcd1234 qui est le mot de passe, mais quand je l'écris dans la classe MainFrame, elle retournera null.why ??? (J'envoie mon objet de gestion de MainFrame au AddStudent avec le constructeur AddStudent) (J'ai besoin des informations de l'objet de gestion qui sont créées dans la classe AddStudent dans le mainframe) que dois-je faire?pourquoi il renvoie null?

management.getStudentsPassword(); 

ma classe AddStudent:

public class AddStudent extends javax.swing.JDialog { 

private SystemManagement management; 


/** Creates new form AddStudent */ 
public AddStudent(java.awt.Frame parent, boolean modal, SystemManagement management) { 
    super(parent, modal); 
    initComponents(); 
    this.management = management; 

} 

ma classe MainFrame:

public class MainFrame extends javax.swing.JFrame { 

/** Creates new form MainFrame */ 
private SystemManagement management; 
. 
. 
.} 

ma classe Systemmanagement:

private String studentsPass; 
... 
public void setStudentspassword(String password){ 
studentsPass = password; 
} 
public String getStudentsPassword(){ 
return studentsPass; 
} 
+1

Vous devez montrer comment il est câblé ensemble dans la classe mainframe ... En outre, il me semble que cela devrait être étiqueté avec des « devoirs » ... – Stephen

Répondre

6

Raison un - le mot de passe n'a pas été défini lorsque vous appelez getStudentsPass() dans MainFrame.

Raison deux - L'objet SystemManagement que vous utilisez dans MainFrame et celui que vous avez dans AddStudent ne sont tout simplement pas identiques.

Difficile à dire sans plus de code. Mais je préfère Reason one - vérifier le flux du programme, quand est le mot de passe, quand essayez-vous de l'obtenir.

+0

Je mets le mot de passe avec setStudentPassword() dans le AddStudent classe. dans la classe AddStudent, ma phrase renvoie le mot de passe correct, mais pas dans le MainFrame. – Johanna

+0

Je pense que le Dialog 'AddStudent' est issu de' MainFrame'. Vérifiez si vous appelez vraiment 'getStudentsPassword()' dans 'MainFrame' après que le dialogue soit visible et pas avant. –

0

Il n'est pas clair d'où vous appelez setStudentPassword, il ne peut pas être appelé s'il quitte toujours studentsPass null.

Questions connexes