29. november 2001 - 15:07Der er
9 kommentarer og 1 løsning
Mangler overblik over Java manøvrering
Jeg har tre klasser *Kunde - nummer, navn, telefon *KundeGUI - alle SWING attributter *Kartotek - attribut ArrayList a; Kartotek indeholder main()
main() kalder: Kartotek ka = new Kartotek(); ArrayList a = ka.getarraylist(); KundeGUI g = new KundeGUI(a); //sender ArrayList med.
------------------------------------------ public KundeGUI(ArrayList a) { super(); try { /* Set JAVA look and feel */ UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); /* Create the frame */ KundeGUI aKundeGUI = new KundeGUI();
/* Calculate the screen size */ Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
/* Pack frame on the screen */ aKundeGUI.pack();
/* Center frame on the screen */ Dimension frameSize = aKundeGUI.getSize(); if (frameSize.height > screenSize.height) frameSize.height = screenSize.height; if (frameSize.width > screenSize.width) frameSize.width = screenSize.width; aKundeGUI.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
/* Add a windowListener for the windowClosedEvent */ aKundeGUI.addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosed(java.awt.event.WindowEvent e) { System.exit(0); }; }); aKundeGUI.setVisible(true); } catch (Throwable exception) { System.err.println(\"Exception occurred in main() of KundeGUI\"); exception.printStackTrace(System.out); } } ------------------------------------------- public KundeGUI() { super(); initialize(); } ------------------------------------------- Hvordan får jeg fat i den ArrayList i min SWING som er sendt med til KundeGUI?
Bryder det ikke med begrebet om indkapsling? Hvis jeg allerede har sendt ArrayList med til KundeGUI, skal det så ikke været muligt at tage den direkte derfra?
public void setarraylist(ArrayList al){ this.a=al; } ------------------------------------------ Er det dem jeg skal tilgå fra andre klasser? Hvordan? Antag at jeg fra KundeGUI ønsker at hente ArrayList a:
Er det så pkundeGUI.KundeGUI.getarraylist()? (KundeGUI ligger i pkundeGUI).
Hvis jeg gør det giver det fejlen: Cannot make a static reference to the instance method named getarraylist for class pkartotek.Kartotek with arguments ()
Listen skal ikke gemmes på en fil. Listen skal \"gemmes\" som en privat attribut.
Du skal ikke have fat i din linkedlist - eller hvad du vælger - men lave passende metoder, så du kan udskifte din linkedlist med noget andet.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.