super() mit Variable bestücken

trash

Mitglied
Hallo,

ich hab folgendes Problem:

Ich habe einen Chatserver, wo ich nach dem Ausführen den Port selbst eintrage ( da ich noch am Testen bin, benutze BlueJ als Compiler )

Dies sieht dann so aus:

Java:
public class ChatServer extends Server
{
    private Hashtable clients;
    
    int wahr=0;
    int akt1, akt2;
    String user1, user2, user3 ="";
    JFrame beginn;
    JLabel lstat;
        
    public ChatServer(int port)
    {    
        super(port);
        clients = new Hashtable();
    }


Nun will ich aber ein .jar Archiv erstellen und möchte den Port daher vordeklarieren, damit ich das Archiv (das Programm) direkt ausführen kann.

Nun habe ich das Programm so umgestellt:

Java:
public class ChatServer extends Server
{
    private Hashtable clients;
    
    int wahr=0;
    int akt1, akt2;
    String user1, user2, user3 ="";
    JFrame beginn;
    JLabel lstat;
    int port = 55; // vordefinierter Port
        
    public ChatServer()
    {    
        super(port);
        clients = new Hashtable();
        gui(); // löst eine kleine GUI aus
    }

Nun kommt aber das Problem: Der zeigt mir folgenden Fehler an: cannot reference port before supertype constructor has been called

Der Fehler ist mir offensichtlich ( so glaube ich ) bewusst. Aber wie soll ich das umgehen? Es muss doch eine Möglichkeit geben

Danke,
trash
 
so z.B:

Java:
public class ChatServer extends Server
{
    private Hashtable clients;
    
    int wahr=0;
    int akt1, akt2;
    String user1, user2, user3 ="";
    JFrame beginn;
    JLabel lstat;
        
    public ChatServer(int port)
    {    
        super(55);
        clients = new Hashtable();
    }
 

Zurück
Oben