Chcę rozpocząć ten artykuł od niezwykłej, na pierwszy rzut oka, dygresji. Później stanie się jasne, dlaczego dokładnie.
Wyobraźmy sobie zatem Kogoś. Ten Ktoś chce opanować narciarstwo alpejskie. I w tym celu podejmuje następujące kroki:
- Instruktorzy, podręczniki, podręczniki itp. - to wszystko pochodzi od złego. Można uczyć się jazdy na nartach samodzielnie. Ponadto w szkole całkiem nieźle nauczył się jeździć na nartach biegowych. W związku z tym wszelkie porady bardziej doświadczonych osób są ignorowane.
- Wybrano najfajniejszy sprzęt. Nie poniżej poziomu eksperckiego. Twarde buty, które bolą stopy. Twarde narty, których zgięcie wymaga fantastycznej siły, znacznie przekraczającej poziom sprawności fizycznej Kogoś. Cóż, itp.
- Tor testowy to... cóż, powiedzmy, tor, na którym rozgrywany jest etap slalomu giganta Pucharu Świata. To jest w sam raz do nauki.
- Kontynuuj w tym samym duchu.
- Literaturę odpowiadającą jego poziomowi wiedzy (szczerze mówiąc, poziomowi zerowemu) schodzi na dalszy plan. Opiera się na lekkiej znajomości wspomnianej teorii C++, C# i OOP.
- Wybrane zostanie najpotężniejsze środowisko programistyczne. Powiedzmy, że Eclipse lub NetBeans. Ten, który zrobi wszystko sam, wystarczy nacisnąć jeden przycisk.
- Jako aplikację próbną wybieramy… cóż, powiedzmy czat. Aplikacja klient-serwer, część kliencka w postaci apletu, część serwerowa - usługa internetowa lub, w najgorszym przypadku, serwlety. W sam raz do nauki.
- Jak przekonwertować tablicę o długości 8 bajtów na długą?
- Dlaczego to się dzieje
NoClassDefFoundError
? - Dlaczego uruchamiam aplikację w Eclipse (
NetBeans/IDEA/JBuilder
), i wszystko jest w porządku, ale bez tego wpisujęjava HelloWorld.class
i wyskakuje błąd? - Dlaczego się zawiesza
ClassNotFoundException
? - Dlaczego nie ma biblioteki? Wrzuciłem już to do plikuclasses.zip, ale to wszystko nic nie daje!
- Dlaczego tworzę tablicę obiektów, ale gdy próbuję użyć elementu tablicy, otrzymuję
NullPointerException
? - I dlaczego ...?
- I dlaczego ...?
- I dlaczego ...?
- Co to jest maszyna wirtualna i dlaczego jest potrzebna?
- Czym jest klasa z punktu widzenia maszyny wirtualnej.
- Co to jest pakiet?
- Co to jest biblioteka?
- Jak maszyna wirtualna wyszukuje i ładuje klasy; co to jest moduł ładujący klasy i jak działa; ile ich jest domyślnie; co to jest ścieżka klas.
GO TO FULL VERSION