Najprostszy program

Java jest językiem całkowicie obiektowym. Dla piszących w C++ różnice na początku nie są wielkie. Najważniejsze rzeczy, o których trzeba pamiętać pisząc program:
  • wielkie i małe litery są rozróżniane,
  • nie istnieją funkcje i zmienne nie będące elementem żadnej klasy, tzn. że są do dyspozycji tylko pola i metody klas,
  • co najmniej jedna z klas programu musi być klasą publiczną, tzn. widoczną na zewnątrz i zawierać publiczną statyczną metodę main, której parametrem jest tablica łańcuchów String[],
  • w jednym pliku źródłowym można umieścić co najwyżej jedną klasę publiczną i dowolną liczbę klas niepublicznych,
  • klasa publiczna musi nazywać się tak samo, jak plik źródłowy, w którym się znajduje.


Szkielet klasy i funkcji startowej powinien wyglądać następująco:

public class NazwaKlasy
{
  public static void main(String args[])
  {
    // tu wpisać kod programu
  }
}

Najprostszy program, wypisujący tekst "Hello world", wygląda następująco:

Plik HelloWorld.java:

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

Program powinien znajdować się w pliku o nazwie HelloWorld.java. Zmiana nazwy pliku na inną wymaga zmiany nazwy klasy.

Plik źródłowy kompiluje się z linii poleceń:

javac HelloWorld.java

Kompilator wymaga parametru - nazwy pliku źródłowego. Jeżeli kompilacja przebiegnie poprawnie, nie zostanie wyświetlony żaden komunikat, a w katalogu z plikiem źródłowym zostanie utworzony plik HelloWorld.class. Tak skompilowany program zawiera nie kod wykonywalny, ale interpretowalne symbole i jest w pełni dekodowalny, tzn. można dokładnie odtworzyć z niego źródło programu, również nazwy wewnętrznych zmiennych. Plik można przenosić między różnymi systemami, tzn. HelloWorld.class utworzony pod Windows będzie tak samo działał zarówno pod Windows, jak i pod Linuksem. Plik można "uruchomić", tzn. zinterpretować, poleceniem:

java HelloWorld

Parametrem interpretera jest nazwa klasy, w której znajduje się metoda main o opisanym formacie.

W efekcie wykonania polecenia wyświetlany jest napis "Hello World" i kursor przechodzi do następnej linii.
Polecenie

System.out.println(String NapisDoWyswietlenia);

Jest w rzeczywistości metodą strumienia wyjściowego podłączonego do standardowego wyjścia czyli konsoli. Argument polecenia jest typu String i jest zawsze jeden. Polecenie przesuwa automatycznie kursor do następnej linii. Jeżeli nkursor ma pozostać na końcu napisu, należy zastosować polecenie:

System.out.print(String NapisDoWyswietlenia);

Napiszmy jeszcze program wyświetlający wszystkie podane argumenty.

Plik Params.java:

public class Params
{
  public static void main(String args[])
  {
    int i = 0;
    System.out.println("Parametry programu");
    for( i = 0; i < args.length; i ++)
      System.out.println("Argument " + (i+1) + " - " + args[i]);
  }
};

W metodzie main deklarujemy zmienną; licznikową i typu całkowitego Integer. Jak widać, wiele parametrów funkcji System.out.println można połączyć w jeden napis znakiem "+" (plus).

Zastosowana pętla for działa identycznie jak w C/C++:

for(działanie początkowe; warunek wykonywania; wykonaj po każdej iteracji)
{
  // to wykonuj w pętli
}
Informacje
Ostatnia modyfikacja 03-11-2007 00:01 Ostatni autor Bula
Ilość wyświetleń 26429 Wersja 4
Komentarz
Coldpeer dnia 20-05-2006 13:03
BTW: czemu pod koniec nie działa kolorowanie składni? :/
pootek dnia 24-09-2005 12:24
ostatni przyklad powinien wygladac tak:
public class Params {

  public static void main(String args[]) {

    int i=0;

    System.out.println(\"Parametry programu\");

    for (i = 0; i < args.length; i ++)

      System.out.println(\"Argument \" + (i+1) + \" - \" + args[i]);

  }

};
Zabraklo lewego nawiasu po for i średnika na koncu definicji klasy.
qbq dnia 16-01-2005 12:39
Drobna uwaga:

Java nie jest językiem całkowicie obiektowym - można w niej korzystać z całej gamy typów prostych. Całkowicie obiektowy jest np. SmallTalk.
agak dnia 27-12-2004 08:50
Myślę że poninieneś wywołać program z takim poleceniem:

java Params arg1 arg2 arg3

w wyniku powinno być: "arg1 arg2 arg3" i kursor w nowym wierszu.
Carl dnia 03-09-2004 11:49
Coś ten przykład z pentelką jest źle napisany, jak na moje to brakuje 1 nawiasu "(", zresztą wywala przy tym blad, w innych językach pętla jest w  { } a tu nie, nieznam sie, ale moze przez to niedziala poprawniem, Wypisuje tylko "Parametry programu", i nic więcej.
A zresztą z {} tez niedziala, wiec niewiem.

Copyright © 2000-2006 by Coyote Group 0.9.3-pre3
Czas generowania strony: 0.0677 sek. (zapytań SQL: 9)