aufrufen Ich versuche, eine Instanz der BrowserSession
Klasse in meiner main
-Methode zu erstellen, und aus irgendeinem Grund kann NetBeans nicht auf die set-Methoden oder den Konstruktor zugreifen Es übergibt einen Socket
als Parameter. Sowohl meine YK250X
als auch meine BrowserSession
sind im gleichen Paket und ich bin in der Lage, eine Instanz von BrowserSession
zu erstellen, solange ich nicht versuche, etwas zu übergeben. Ansonsten bekomme ich eine cannot find symbol
Fehlermeldung.Nur einige Methoden einer separaten Klasse im selben Paket in meiner Hauptmethode
Hier ist meine Hauptmethode Code:
package yk250x;
/**
*
* @author Sophia_M-D
*/
import java.net.ServerSocket;
import java.net.Socket;
import java.io.BufferedReader;
public class YK250X {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws Exception {
int BrowserListenPort = 100;
ServerSocket BrowserListenSocket = new ServerSocket(BrowserListenPort);
Socket BrowserConnectionSocket = BrowserListenSocket.accept();
BrowserSession ThisBrowserSession = new BrowserSession();
ThisBrowserSession.setBrowserConnectionSocket(BrowserConnectionSocket);
}
}
Und hier ist mein BrowserSession
Klassencode:
/**
** @author srm349
*/
import java.net.ServerSocket;
import java.net.Socket;
import java.io.BufferedReader;
import java.io.PrintWriter;
import java.io.IOException;
import java.lang.Thread;
public class BrowserSession{
//Member Variables
private Socket BrowserConnectionSocket;
private PrintWriter BrowserStream;
//Constructor Methods
public BrowserSession(Socket NewSocket){
BrowserConnectionSocket = NewSocket;
}
public BrowserSession(){
}
//Get&Set Methods
public Socket getBrowserConnectionSocket(){
return BrowserConnectionSocket;
}
public void setBrowserConnectionSocket(Socket newConnection){
BrowserConnectionSocket = newConnection;
}
// method through which information is sent to the browser
public boolean WriteMessage(String Message){
try{
if(BrowserStream == null)
BrowserStream = new PrintWriter(BrowserConnectionSocket.getOutputStream());
BrowserStream.println(Message);
BrowserStream.flush();
return true;
} catch(IOException Error) {
return false;
}
}
}
Es ist viel einfacher für alle (sonst), wenn Sie Standard-Namenskonventionen verwenden. Insbesondere sollten Namen von Variablen, die nicht "statisch" und "final" sind, mit einem * Kleinbuchstaben * beginnen. –
Ich kann Ihr Problem nicht über den Befehlszeilencompiler reproduzieren, und ich sehe keinen Grund, warum es einen geben sollte. Meine beste Vermutung ist, dass NetBeans aus irgendeinem Grund an einer veralteten Version von 'BrowserSession.class' festhält. In diesem Fall wäre die Lösung, eine vollständige Neuerstellung zu erzwingen. –