pierwsze kroki w javie - blad kompilacji

0

mam taki kod zywcem przepisany z ksiazki do javy :



package book.reader;

import janb.main.*;

public 
      class Main 
        extends View{
       
    
    public static void main(String[] args) {
       Main main = new Main();
    }
    
    public void drawView()
    {
        showResult("Hello world");
    }
}
    

i wywala mi błedy :

init:
deps-jar:
Compiling 1 source file to D:\Projekty\hello\build\classes
D:\Projekty\hello\src\hello\Main.java package janb.main does not exist
import janb.main.*;
D:\Projekty\hello\src\hello\Main.java cannot find symbol
symbol: class View
extends View{
D:\Projekty\hello\src\hello\Main.java cannot find symbol
symbol : method showResult(java.lang.String)
location: class book.reader.Main
showResult("Hello world");
3 errors
BUILD FAILED (total time: 36 seconds)

Czy ktos mi pomoże ? bo nie mam pojecia jak sie za to zabrać :(
Korzystam z netbeans 5.0, jeśli ktoś podesle mi linki do jakiś e-booków java też się nie obraże :)

0
import janb.main.*;

importuje bibliotekę z potrzebnymi klasami. Kompilator zgłasza Ci, że podana przez Ciebie biblioteka ne istnieje. Jeśli piszesz nową klasę, która dziedziczy po innej to kompilator musi mieć dostęp do biblioteki, gdzie znajduje się definicja klasy - to ównież zgłasza kompilator.

Chociaż wygląda na to, że bibliotekę janb.main wziąłeś z palca. Tak przynajmniej wynika z Googl'a

0

Czyli co mam zrobić?
może ktoś podrzuci jakieś helloworld w javie żebym miał chociaż jakiś punkt oparcia :)

0

Konsolowy "Hello World"

public class Hello {
	public static void main(String[] args)
	{
		System.out.println("Hello World");
	}
}

Okienkowy:

import javax.swing.JFrame;
import javax.swing.JLabel;

public class Hello extends JFrame{
	public static void main(String[] args)
	{
		new Hello();
	}
	
	Hello()
	{
		setSize(100,100);
		add(new JLabel("Hello World", JLabel.CENTER));
		setVisible(true);
	}
}

pozdrawiam
johny

0
import janb.main.*;

Probujesz importowac wszystkie klasy z folderu janb/main ktory nie istnieje.

class Main
    extends View{

rozszerzasz klase Main o klase View, której kompilator nie widzi.

showResult("Hello world");

Uzywasz metody o nazwie, która nie jest dla kompilatora rozpoznawalna.

I jeszcze jedna uwaga. Wpisywanie wszedzie słowa kluczowego public nie jest wymagane. Jakieś dziwne zboczenie panuje pod tym względem. A jeżeli już się uparłeś to pamiętaj, że plik z kodem musi mieć tą samą co nazwa klasy (w tym wypadku Main.java)

0
em1x napisał(a)

I jeszcze jedna uwaga. Wpisywanie wszedzie słowa kluczowego public nie jest wymagane. Jakieś dziwne zboczenie panuje pod tym względem.

Nie jest to zboczenie - domyslnym atrybutem dostepu jest package, nie public.

pozdrawiam
johny

1 użytkowników online, w tym zalogowanych: 0, gości: 1