Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
private methode wird aus anderer klasse aufgerufen?
der code ist ein bisschen lang ist aber nur zusätzliche erklärung. es geht um die mehtode showdialog die ja eigentlich aus einer anderen klasse aufgerufen wird. das ist ein verkürztes übungsbeispiel. das original in dem ansonsten nur mehr gezeichnet wird funktioniert - nur warum ? ich habe mir gedacht wenn eine methode private ist darf diese nur aus der eigenen klasse aufgerufen werden.
Code:
package dataexchangetest;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class DataExchangeTest {
public static void main(String[] args) {
DataExchangeFrame frame = new DataExchangeFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}
/**
Ein Rahmen mit einem Menü, dessen Aktion Datei->Verbinden ein
Kennwortdialogfeld anzeigt.
*/
class DataExchangeFrame extends JFrame {
public DataExchangeFrame() {
}
private PasswordChooser dialog = null;
private JTextArea textArea;
private class ConnectAction implements ActionListener {
public void actionPerformed(ActionEvent event) {
if (dialog == null)
dialog = new PasswordChooser();
if (dialog.showDialog(DataExchangeFrame.this, "Verbinden")) {
// Wenn akzeptiert, Benutzereingabe abrufen
User u = dialog.getUser();
textArea.append("Benutzername = " + u.getName() + ", Kennwort = " + (new String(u.getPassword())) + "\n");
}
}
}
}
/**
Eine Kennwortauswahl, die in einem Dialogfeld angezeigt wird.
*/
class PasswordChooser extends JPanel {
public PasswordChooser() {
}
public boolean showDialog(Component parent, String title) {
}
private JDialog dialog;
}
ich denke er meint nicht methode, sondern die private Variable *dialog*... die private deklarationen sind für klassen in einer SourceDatei nicht gültig, wie sie bei Klassen in versch. Source dateien sind
nein habe die methode gemeint, aber habe schon zig mal herumkopiert und dabei ist mir nicht aufgefallen, dass ich die methode offensichtlich schon mal geändert habe. mein fehler ich verkrümle mich.