Java, Javac hiba: cannot find symbol?
Két java fájlom van: Browser.java [main] és a Simpleweb.java
classfájlok készítésekor: javac webbrowser\Browser.java
az alábi jön elő:
..\Browser.java:5: error: cannot find symbol
Simpleweb dude = new Simpleweb();
^
symbol: class Simpleweb
location: class Browser
Ugyanez mégegyszer, a végén: 2 errors
Browser.java:
import javax.swing.JFrame;
public class Browser {
--public static void main(String[] args) {
----Simpleweb dude = new Simpleweb();
----dude.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
--}
}
Simpleweb.java:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class Simpleweb extends JFrame {
--private JTextField addressBar;
--private JEditorPane display;
--public Simpleweb() {
----super("Browser");
----addressBar = new JTextField("enter a URL hoss!");
----addressBar.addActionListener(
----new ActionListener() {
------public void actionPerformed(ActionEvent event) {
--------loadCrap(event.getActionCommand());
--------}
------}
----);
----add(addressBar, BorderLayout.NORTH);
----display = new JEditorPane();
----display.setEditable(false);
----display.addHyperlinkListener(
----new HyperlinkListener() {
------public void hyperlinkUpdate(HyperlinkEvent event) {
--------if(event.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
----------loadCrap(event.getURL().toString());
--------}
------}
----}
----);
----add(new JScrollPane(display), BorderLayout.CENTER);
----setSize(500,300);
----setVisible(true);
--}
--private void loadCrap(String userText){
----try {
------display.setPage(userText);
------addressBar.setText(userText);
----}
----catch(Exception e) {
------System.out.println("crap!");
----}
--}
}
Mi a hiba oka?
Kipróbáltam ezzel a 2 fájllal is, ugyanezt írja ki:
Browser.java:
public class Browser{
public static void main(String[] args){
Simpleweb dude = new Simpleweb();
}
}
Simpleweb.java:
public class Simpleweb{
}
Visszamegyek dedóba :S
Hogyan lehet példányosítani javaban, hogy azt felfogja a javac is?
Rájöttem arra, hogy a java fájl maga is hibás. Egy programból másoltam a fájlalapot, ezért akárhogy módosítottam a tartalmát hibás maradt.
Továbbá kihagytam az import java.io.*; sort a Browser.java-ból, ez megkeresi a mappában található többi fájlt, így már lehet hivatkozni a Simpleweb-re.
Viszont újabb hiba állt fel, a fordításkor ismét.
javac *.java
Hibaüzenet:
Simpleweb.java:6: error: class Simpleweb is public, should be declared in a file name public class Simpleweb extends JFrame{
^
1 error
Ha jól értem az osztály nevét tartalmazó sort akarja a fájl nevébe helyettesíteni, mert nem értelmezi. Mért nem?
Nem tudom mi volt a legutolsó hiba, de újraírás után már fordul az egész.
Köszönöm a segítséged válaszadó, és elnézést hogy elsőre rosszul értettem az üzeneted!
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!