Home Map Index Search News Archives Links About LF
[Top Bar]
[BottomBar]
[Photo of theAuthor]
Jose M. Fernández 

Yazara iletin
Index
Giri�
Orijin
�ncelemek ve �ndirmek JAVA 
Ortam�n Geli�tirilmesi 
Karakteristikler 
JAVA da ilk program
�zet

Java. B�l�m I

�eviri: �nci Gedik

[Ilustration]

A��klama: Bu , Java programlama hakk�ndaki bir seri makaleden ilkidir. �lk b�l�m Java'y� bir dil olarak , genel karakteristi�i ve en fazla rabet g�ren bilgi kaynaklar�n�n yeriyle a��klamaktad�r.


Giri�

Bu ,Java programlama dilini ve onun �evresel geli�imini a��klayan bir dizi makale ile ba�lar.Birinci ama� olarak ,dilin tarihi hakk�nda yay�mlardan, mikrodalgalar ve �ama��r makinelerinden... uzak duraca��m.( E�er aran�zda bunlardan herhangi biri ile ilgilenen varsa bunlar� �oklu k�t�phanelerden hatta literat�rden bulabilir.) Ayn� zamanda kocaman burunlu, ��gen v�cutlu ve ellerini marimba'n�n ritmine g�re sallayan ,bana eski Amerikan bilim kurgu filmlerini  hat�rlatan Duke ' tan  da (Java'n�n maskotu)  uzak duraca��m. 

 Java fenomeni de zaman�nda ge�ici pop�lerlik ta��d�.Her seviyedeki bilgisayar magazini bunun hakk�nda yazd� , Java apletlerini geli�tirmek �zere �r�n satan bir�ok yaz�l�m firmas� var ve �ok az web sitesi Java apleti i�ermiyor.

Bu seriler aras�nda m�mk�n oldu�u kadar ,  asl�nda temel i�ler i�in basit fakat ustal�kl� kullan�m i�in hayl� kar���k ve zor olan bu programlama dilini derinlemesine incelemeye ve ��renmeye �al��aca��m. 

Bu ilk birka� makale ile  amac�m�z  genel olarak dile bir tan�mlama sa�lamak b�ylece daha sonra apletler,a�-ili�kili planlar, JDBC,vb.  gibi konular�n derinine inebiliriz.

Þunu belirtmeliyim ki Java genel ama�l� bir dildir,bunu yapmada olduk�a pop�ler olmas�na ra�men sadece web sayfalar�na aplet yazmak i�in kullan�lmak �zere yarat�lmam��t�r. Java'n�n sadece g�r�n���ne tak�lamay�z ��nk�  java apletlerinden �ok daha ilgin� bir �ok alternatifi vard�r.

Bu ilk makale tan�mlamadan �ok pratiktir.Bir sonra ki makalede, dilin temel karakteristiklerini ve �evresel geli�imini a��klayaca��z.Sadece en sonda Java program�n�n bir �rne�ini g�rece�iz.

Orijin

Java  Sun Microsystem Inc. 'de hayat�n�n 18 ay�n� ge�irdi�i yerde 1991'de  James Gosling, Patrick Naughton, Chis Warth, Ed Frank ve  Mike Sherindan taraf�ndan olu�turuldu. 1992 ve 1995 aras�nda Bill Joy, Arthur Van Hoff, Jonathan Payne, Frank Yellia, Tim Lindolm ilk prototipin olgunla�mas� �zerine i�birli�i yapt�lar.

Tarihlerden belli ki  Java WWW 'den �nce  ya da en az�ndan onunla e�zamanl� olu�turulmu�tur -- 1991'e kadar Tim Berners Lee HTML dilini geli�tirmemi�tir.

Java'n�n yap�s� C'ye olduk�a benzemektedir ve obje a��rl�kl� karakteristikleri de ayn� zamanda C++ 'a benzemektedir. Java  uygun ve mant�k �er�evesinde birbirini tutan bir programlama dilidir.

 C ve  C++ aras�ndaki benzerlikler, Java'n�n  C++ '�n internet i�in bir versiyonu oldu�u izlenimini verebilir, fakat �nemli teorik ve pratik farkl�l�klar vard�r. Java �zellikle C++ ile kar��la�t�r�lan obje k�kenli parametreleri d�zeltir ve ar�t�r.

Internet  Java'y� ortaya att� ve herkesin bildi�i bir dil haline getirdi ve e�zamanl� olarak Java, siberuzayda �cretsiz edinilebilen objeler dizisini geni�letti�inden beri �nternette derin etki yaratt�  (kendi �al��t�r�labilen programlar ).

�ncelemek ve �ndirmek 

Java programlama i�in kesin bir�ok ara� vard�r.Tesad�fen hep  GNU/LINUX ortam�n� �nerece�im (kelimenin tam anlam� ile kay�plar�n�n bulunmas�): Varolan ELF, 1.2.13  ve sonraki kabuklara ihtiya� duyan Linux tabanl� olarak yerine getirilmi�tir.

Ben JDK (Java Development Kit) ortam�n�  , Netscape versiyon 2.0.14 ya da sonras� , ve  Xemacs gibi bir yaz� edit�r� kullanaca��m .Daima  Xwindows ortam�nda �al��aca��z . Herzaman gerekli olmamas�na ra�men , Apletleri ve programlar� bir grafik arabirimi ile geli�tirirken  buna ihtiyac�m�z olacak.

JDK da��t�m� a�a��daki sayfadan indirilebilir :

http://www.blackdown.org/java-linux.html

Dosyalar� hemen indirmek yerine bu siteden ba�lant�l� aynalardan birini se�ebilirsiniz. Birka� ay �nce - son ziyaretimde - JDK-1.1.3 'nin son versiyonu (bu makale i�in kullan�lan)  1.19 versiyonunun orada oldu�unu g�rd�m.Unutmay�n ki her�eyi indirmeye kalkarsan�z bu size 24 Mb'a mâlolur.Oysa sadece ihtiyac�n�z olan �eyler yakla��k 12 Mb yer kaplamaktad�r(deneyin!).

gunzip ile ar�ivleri a�t���n�zda ba�laman�z i�in hi�bir engel kalmayacak.

Normal olarak da��t�m�  /usr/local dizinine yapmak ,sonra  /JDK1.1.3 alt dizinini yaratmak ve beraberinde a�a��dakileri yapmak gerekir :

/doc  HTML format�ndaki ofis  d�k�manlar

/demo  Java demo programlar

/lib   K�t�phaneler

/bin  JDK'n�n belli ara�lar�n�n oldu�u dizin.

 /lib dizininin i�inde  "classes.zip"(dosyay� a�may�n) dosyas�n� buluruz , bu dizin JDK taraf�ndan kullan�lan derlenmi� s�n�flar� i�erir.

root dizini ile beraber  "src.zip" dosyas�n� buluruz , bu dizin classes.zip i�erisinde yeralan kaynak dosyalar� i�erir . Bunlar derlenemez ve sadece bilgi ama�l� da��t�mlarla beraber desteklenirler.

Ortam�n Geli�tirilmesi 

Daha �nce belirtildi�i gibi geli�me ara�lar� /bin dizininde yeral�r : javac : java kaynaklar�n� baytkodlar�na �eviren  java derleyicisi.

Java : java yorumlay�c�s� . Java baytkodlar�n� �al��t�r�r.

jre :  Java'ya benzer ba�ka bir yorumlay�c� ,fakat kullan�c�lar i�in oldu�u d���n�lmesine ra�men t�m se�eneklerin kullan�l�r olmas� istenmemektedir.

appletviewer:  apletleri test eder ve �al��t�r�r.

jdb: hata d�zelticisi.

javap:  Java da derlenen baytkod dosyalar�n�n ay�r�c�s�.

javadoc : d�k�mantasyon jenerat�r� ,  genel ve korunmu� s�n�flar�, aray�zleri , yap�lar�, methodlar� ve alanlar� tan�mlayan  HTML sayfalar�n� yarat�r.Ayn� zamanda s�n�f hiyeara�isini ve �yelerin i�inde bulundu�u indeksi yarat�r.

javah : Java programlar�n�n bilinen metodlar�na eklenen ara� ( C de ) 

jar:  java s�n�flar�n� ve kaynaklar�n� bir Jar ar�iv dosyas�nda saklar .

javakey : Dijital imzalar� koruyan ara�.

updateAWT : bir ba�vurudaki AWT1.02 metodu ile de�i�tirilen isimleri g�ncelle�tirir. 

Belli bir dizin yap�s� ile glitch' ler olmadan �al���rken /usr/local/JDK1.1.3/bin 'i PATH de�i�kenine ataman�z� tavsiye ederim .E�er kullan�labilen sistem geli�me �evresini daha geni� yapmak istiyorsan�z  /etc/profile dosyas� i�indeki Path degi�kenini kar��t�r�n.

Karakteristikler 

Devam etmeden �nce , kendimize Java nedir sorusunu sormam�z gerekir. Cevaplamak i�in  JDK'n�n  elkitab�nda  yazd���  gibi  Java'n�n bir programlama dili ve ayn� zamanda bir platform oldu�unu g�z�n�nde bulundururuz.

Bir programlama dili olarak Java a�a��daki karakteristiklerle beraber y�ksek seviyeli bir dildir.  (ayn� noktada onlar� detayl� olarak inceleyebiliriz ):

  • Basittir
  • Obje k�kenlidir 
  • Da��t�lm��t�r
  • Yorumlanm��t�r
  • Kuvvetlidir 
  • G�venilir
  • Sistem yap�s�nda tarafs�zd�r
  • Ta��nabilir
  • Çok okuyuculu
  • Dinamik
  • Y�ksek ��z�n�r 
Dikkatimizi �eken ilk �ey Java'n�n yorumlanm�� olmas�d�r.Java kaynaklar�n�n bir objeyi baytkodlar olarak yaratmas� i�in bir �nceki daha d���k seviyede ki derleyiciye ihtiyac� olmas�na ra�men  , de�i�ik platformlarda yorumlanabilir .

" Birkez yaz�p herzaman �al��t�rabildi�imiz " Java baytkodlar�na te�ekk�r ederiz.  Java programlar�n� bir platformda derleyebilir ve JVM (Java Virtual Machine ) arac�n� i�eren tamamen farkl� ba�ka bir yap�da �al��t�rabiliriz. �rne�in bir Java program� Windows NT platformunda derlenebilir ve bir Sun Ultra Solaris 'de sorun olmadan �al��abilir . (en az�ndan teorik olarak)

Genel olarak bir platform uygulaman�n �al��t��� bir donan�m/yaz�l�m ortam�d�r . Bununla beraber Java i�in bir platform �al��t��� bir yaz�l�m ortam�d�r . Her Java platformu bir donan�m ortam�nda �al��mak zorundad�r.

Bir Java platformunun iki b�l�m� vard�r :
 

  •  Java Virtual Machine (JVM)
  • Uygulamal� program aray�z� (API)
JVM , Java �ncelikli derlenen programlar�n �al��t�r�ld��� a��k bir bilgisayard�r.K���k ve basit olarak dizayn edilmi�tir ��nk� d���n�len onu her yere indirmektir . Bu basitlik onu t�m varolan platformlara ta��may� m�mk�n k�l�yor , b�ylece hepsine ortak bir yaz�l�m sa�l�yor ve her kar���k a� sisteminde ( �nternet gibi ) b�y�k �l��de ta��nabilirlik sorununu ortadan kald�r�r.Hayal edilebildi�i gibi bu, durdurulamayan teknoloji i�in yakla��k bir nedendir. Bununla beraber sanal makine bir yaz�l�m tabakas� olarak g�r�lmemelidir, fakat isminin belirtti�i gibi, bu dolu bir bilgisayar sistemi olmaya �al���yor,yava� yava� ger�ek Java makinelerini , kredi kartlar� ,TV dekoderlerini ve benzerlerini destekleyen Java Çiplerini marketlerde g�r�yoruz . 

Java'n�n API 's�  grafiker kullan�c� aray�z� (GUI ) gibi �zellikleri destekleyen geni� bir yaz�l�m bile�enleri koleksiyonudur . Bunlar k�t�phanelerde grupland�r�lm��t�r. ( Java terminolojisini kullanan  Java paketleri ).Bu paketler sayesinde �ok bilinen  web Apletlerinin yan�s�ra,  Java'y� daha bir�ok uygulamada kullanmak m�mk�nd�r. Web serverlar�n� dizayn etmek m�mk�nd�r, �rne�in, vekiller, ileti serverlar�, IRC serverlar�, ve �ntenet ile ilgili hayal edilebilecek herhangi bir�eyler...
 

  • API paketlerini de�i�ken gruplar i�erisinde  s�n�fland�rabiliriz :
    • Temel: objeler, matrisler, say�lar, girdi ve ��kt� , bilgi yap�lar�, sistemin �zellikleri, tarih, zaman, vb. 
    • Apletler : fonksiyon seti ve Java apleti yapmak i�in kullan�lan �zellikler. 
    • A� �al��mas�: URL'ler, TCP, UDP, soketler, IP adresleme. 
    • Uluslararas�la�t�rma: yerel tan�mlamalara kolayca adapte olabilen kodlar yazmaya  yard�m eder ve yerel dilde g�r�nt�lenir.
    • G�venlik:d���k ve y�ksek seviye,dijital imzay� i�erir, genel ve �zel anahtarlar,kontrol ve sertifikaya giri�. 
    • Yaz�l�m B�l�mleri: JavaBeans olarak bilinir. 
    • Veritabanlar�: Çok say�da ili�kili veritaban�na giri�i sa�lar .

    •  

       

      Bu temel API kabu�unun yan�s�ra ayn� zamanda 3D uzant�lar� , ileti�imler, animasyonlar, vb. vard�r.


    B�l�m�n ba��nda  Java'n�n detayl� �al��abilece�imiz bir dizi karakteristi�i oldu�unu belirttik : 
     
    Basittir:  Java'da  daima bir tasla�� olu�turan bir�ok  iyi tan�mlanm�� formlar vard�r. Bu , g��l� bir dilin  az kullan�lan ve daha kar���k  �zellikleri olan t�m fonsiyonelitelerini �nerir. Java  C/C++ 'n�n sentakslar�n� ve obje k�kenli �zelliklerini  miras al�r. C/C++ 'la beraber her programlama ailesi Java 'y� ��renmede sorun ya�ar.Benzerliklerine ra�men, Java a�a��daki bir�ok  C/C++  �zelliklerini eler :
    • ��aret�i aritmeti�i
    • Kay�teder (struct)
    • Tip tan�mlamalar� (typedef)
    • Makrolar (#define)
    • Bo� belle�e ihtiya� duyar (free)
    • Çoklu miras yok
    • Y�nlendirici operat�rler yok
    • Ünitelerde de�i�im yok
    Obje k�kenlidir: Java �iziklerden dizayn edilmi�tir, ve sonu� olarak obje k�kenlili�e temiz , yararl� ve pragmatik bir �ekilde yakla��r. Java i�in obje modeli basit ve kullan�m� kolayd�r.
    Da��t�lm��t�r: Java d���ncede geni�  TCP/IP birle�tiricisi ile dizayn edilmi�tir. Asl�nda , bu  geli�tiricilerin net �zerinden yerel dosyalarda oldu�u gibi kolayca bilgi giri�ine izin verir .
    Kuvvetlidir: Java  g��l� yaz�lm�� bir dildir, bu derleme zaman�nda tip kontrol�ne izin verir .Çal��mas� zaman�nda da baz� kontroller yapar .Haf�za otomatik olarak kullan�lmaktad�r, b�ylece yorumlay�c� kullan�mda olmayan objeler i�in bir otomatik ��p toplay�c�s� yarat�r. Java kendi ba��na  bir dizi obje k�kenli istisna  sa�lar.Do�ru yaz�lm�� bir uygulamada  t�m �al��t�rma hatalar�  program taraf�ndan kullan�labilir.
    Yap�sal ba��ms�zd�r :  Java'y� dizayn edenlerin as�l amac� "birkez yaz, her zaman ve daima herhangi bir yerde �al��t�r  " dir. Java kodu y�ksek seviyeli makinadan ba��ms�z bayt kodunda bir kez yorumlan�r . Bu baytkodu makineden ba��ms�z herhangi bir yorumlay�c�da �al��t�r�lacak �ekilde dizayn edilmi�tir.
    G�venilir: Da��t�lm�� bilgiye ihtiya� m��teri operat�r sisteminden en y�ksek seviyeli g�venli�i ister .Çal��ma ortam�nda t�m �zellikleri ile  Java  g�venlik sa�lar :
    • Bir baytkodu ara�t�r�c�s�
    • Çal��ma zaman�nda haf�zan�n de�erlendirilmesi
    • Dosya giri� k�s�tlamas�
    Derleyicinin sadece do�ru kodu olu�turmas�na ra�men, yorumlay�c�  onu   derlemeden bu yana  de�i�ip de�i�medi�inden emin olmak i�in  iki kez kontrol eder.Bundan dolay�  Java yorumlay�c�s� s�n�flar i�in haf�zan�n de�erlili�ini ara��r�r. Java herhangi bir sistem i�in en g�venli uygulama olarak d���n�lebilir .
    Ta��nabilir: Java'n�n ta��nabilirli�i bir yana, yap�sal ba��ms�zl���na g�re, Java ta��nabilir bir standart yarat�r: tamsay�lar daima tamsay�,  GUI  windows'un kuramsal sistemini i�erir ve bu y�zden yap�dan ba��ms�zd�r (UNIX, PC, Mac). 
    Yorumlanm��t�r: Java'n�n temel ama�lar�ndan birini yerine getirmek i�in, platform , java derleyicisi orta d�zeyli bir kod (baytkod) yarat�r . Uygun bir yorumlay�c� ile  �al��t�r�labilir .Bu paradizim java uygulamalar�n�n m�mk�n olan performans problemlerini g�rmemizi sa�lar.Bununla beraber  , ve bu performans�n yan�s�ra , Java yarat�c�lar� baytkodlar� olabildi�ince basit ve m�mk�n olan  maksimum  performans� sa�lamak �zere  makine koduna �evirecek kadar kolay tutarlar. 
    Çok okuyuculu: Sa�lam bir yolda bir�ok tasla�� ayn� zamanda beraber �al��t�racak Java uygulamalar� yazmak olduk�a basittir. 
    Dinamik: Java �al��ma zaman�na kadar uygulamalar� olu�turan t�m mod�lleri  birbirine ba�lamaya �al��maz . Bu �zellik kodlar� dinamik olarak sa�lam ve uygun bir �ekilde birbirine ba�lamaya �al���r.

    Bu uzun "konu�ma" dan sonra (�o�u Java d�k�manlar�nda bulunabilir) Java'n�n GNU/Linux d�nyas�ndaki yerini merak edebilirsiniz .Daha �nce  Linux i�in kullan�lan,  Sun Mikrosistem taraf�ndan geli�tirilen ticari ama�l� (�cretsiz da��t�ld��� halde) JDK d�k�manlar�ndan bahsetmi�tik.

    GLP lisans� alt�nda  GUAVAC derleyicisi gibi herhangi bir Java kayna��n� hi�bir sorun ile kar��la�madan derlememizi sa�layan bir�ok ara� vard�r.Ayn� zamanda Berkeley lisans� alt�nda   KAFFE olarak adland�r�lan bir sanal makineden bahsetmeliyiz .Son iki proje , geli�me sistemini tamamlamak i�in Sun'n�n Java s�n�f k�t�phanelerine (�cretsiz da��t�mda olanlar ) ihtiya�lar� oldu�u halde olduk�a iyi seviyedelerdir. 

    Varolan bir�ok proje, hâlâ ilkel seviyede olmalar�na ra�men , geli�me ortam�n� h�zl� ve sanal uygulamalar ile sa�lamay� ama�l�yor.

    Son olarak nette Java ve GNU  teknolojisinde  b�y�k hareketlenmelerin oldu�unu  , �zellikle Sun'dan ba��ms�z olarak Java i�in �cretsiz da��t�lan tamamlanmi� ara� kutular�n�n yarat�ld���n� sevinerek s�yl�yorum . Java'n�n �nemini modas� ge�ti�inde yeni yeni anl�yor olabiliriz, ama eminim ki onu hat�rlatacak baz� �eyler olacakt�r.( Hatta bir�ok �eyin kalaca��na bahse girerim)

    JAVA da ilk program

    Dilin genel karakteristiklerinden baz�lar�n� g�rd�kten sonra ger�ek bir programa bakal�m.Giri�te belirtti�im gibi, merhaba d�nya �rne�i gibi s�radan laflardan m�mk�n oldu�u kadar uzak duraca��m, onun yerine istedi�imiz boyutta bir kare �izecek olan bir program ile ba�layal�m.
    (Fazla olmamak kayd� ile biraz kar���k): 
    File Cuadro.Java
    class Cuadro {
    public static void main (String args[]) {
            int l ,a;
            if (args.length == 2) {
                l = Integer.valueOf(args[0]).intValue();
                a = Integer.valueOf(args[1]).intValue();
             }
             else {
              l= 20;
              a= 15;
             }
              for (int i=l; i>0; i--){
                System.out.print("*");
                }
                System.out.print("\n");
                for (int i= a-2; i>0; i--){
                 System.out.print("*");
                   for(int j=l-2; j>0; j--) {
                      System.out.print(" ");
                      }
                      System.out.print("*\n");
                      }
                    for (int i=l; i>0; i--){
                    System.out.print("*");
                    }
                  System.out.print("\n");
               }
    }
    
    
    Java'da kaynak dosyaya verilen isim �ok �nemlidir ��nk� bir "derleyici birim" tan�mlar.Dosya bir veya daha fazla tan�mlama s�n�f� i�erebilir.Derleyici kaynak dosyadan uzant�y� ta��mas�n� ister. Java (4 karakter) kesinlikle baz� sistemler taraf�ndan desteklenmemektedir. (DOS ya da  Windows 3.1)

    Verilen �rnekte  s�n�f�n ismi kaynak dosyan�n ad� ile tan�mlan�r .Bu tesad�f de�ildir , Java'da t�m kodlar bir s�n�fta olmal�d�r.Anla�maya g�re s�n�f�n ismi ,s�n�f� i�eren kaynak dosyan�n ad� ile uyu�mak zorundad�r.Bundan ba�ka Java k���k b�y�k harfe kar�� hassast�r.

    Komut sat�r�nda �rne�i derlemek i�in :
    > javac Cuadro.java

    Java derleyicisi , (hersey iyi giderse) kendili�inden ikilik (baytkod) formu i�eren Cuadro.class dosyas�n� yarat�r ve acil olarak yorumlay�c� taraf�ndan �al��t�r�labilir :

    > java Cuadro

    Java kaynak kodu derlendi�inde , her s�n�f  ar�ivde s�n�f ismi ile ayn� ve bireysel olarak yerle�tirilir. Bu y�zden kaynak dosyalara i�erdikleri s�n�f�n ismi ile ayn� ad� vermek g�zel bir al��kanl�kt�r b�ylece kaynak dosya ad�  ar�iv.class dosyas� ile �rt���r.

    Cuadro.java �rne�imizin basitli�ine ra�men Java'n�n temelini ve tipik java programlar�n�n yap�s�n� anlamam�z� sa�lar .

    �lk olarak bu �rne�in HTML dosyas�nda varolan bir aplet olmad���n� fakat komut sat�r�nda java derleyicisi taraf�ndan derlenebilen ba��ms�z bir program oldu�unu anlay�n.

    Program�n ilk sat�r� :

    class Cuadro {
    �lk kelime saklanan dilden al�nm��t�r , "Cuadro" -- ispanyolca  bir kelime-- isimli yeni bir s�n�f�n tan�mlamas�n� yapmaktad�r. T�m �yelerini i�eren s�n�f�n verilmi� tan�mlamas iki k�me parantezinin {} i�inde verilir.

    Bir sonraki sat�rda:

    public static void main (String args[]) {
    main( ) isimli metod g�sterilir .T�m  Java uygulamalar�  main( ) olarak isimlendirilen metod ile �al��t�r�lmaya ba�lan�r .(C/C++'a benzer �ekilde).Þimdi size �rne�i anlamak i�in gerekli detaylar� belirtmeme izin verin .(sonraki makalelerde bu daha ayr�nt�l� a��klanacakt�r).

    public �ifre kelimesi s�n�flar�n �ye metodunu kontrol eder . Bir s�n�f  public olarak tan�mland���nda , bu s�n�f kendisinin  d���nda tan�mlanm�� kodlar taraf�ndan kullan�labilir . static �ifre kelimesi  main( ) metodunu s�n�f� ara�t�rmadan uyanmaya zorlar . Void bu metodun herhangi bir de�ere d�n��medi�ini  g�sterir . Bir fonksiyon ya da metodun parametrelerini ge�mek i�in fonksiyon isminden sonra parantezler kullan�l�r , bizim �rne�imizde main String s�n�f�ndan indisleri olan bir matrisi parametre olarak al�r .

    Belli ki bu metoda ba�l� t�m kodlar ayn� zamanda yuvarlak parantezler aras�nda kapat�l�r .Sonra, sat�rda :

     int l, a ;
    iki de�i�ken tan�mlar�z .Java  da t�m degiskenler   kullan�lmadan �nce   tan�mlanmal�d�r .Þunu farkedin ki koddaki t�m yap�lar noktal� virg�l ";" ile biter . 

    Kodun kalanlar� a�a��daki gibi k���k bir algoritma g�sterir :

    1. Arg�man�n sa� taraf�ndaki numaran�n sa�lan�p sa�lanmad���n�i test eder.
    2. If (args.length==2)
    3. Parametreler sa�lan�rsa,tamsay� olarak atan�rlar :
    4.   l = Integer.valueOf(args[0]).intValue();
        a = Integer.valueOf(args[1]).intValue();
    5. Di�er durumda de�i�kenler varolan de�erlere ilk olarak atan�r :
    6.   l = 20;
        a = 15;
    7. Program�n geri kalan k�sm� ekranda kare �izmeyi sa�layan yap�dan ba�ka bir�ey de�ildir. �zel olarak print() 'in arg�man olarak ge�en diziyi bast��� yerde :
    8. System.out.print()
      ifadesi  ile g�sterilebilir. System  sisteme giri�i sa�layan s�n�f�n �ntan�mlamas�d�r ve  out konsol ile ba�lant�l� ��kt� dizisidir.Ayn� zamanda,
      for (int i=l; i>0; i--)
      Beklendi�i gibi  C/C++ deneyi ve di�er dillerin dedi�i gibi hareket eder.
    �devin iyi bir par�as� da okuyucunun bu k���k kodu kullanarak bunu nas�l derleyip, �al��t�rabilece�ini test edebilmesidir, fakat ayn� zamanda   Linux, windows 95 gibi de�i�ik platformlar alt�nda  Cuadro.class  derlenen objesini �al��t�rarak ta��nabilir  kodu da test edebilirler ve herhangi bir platformda ayn� �ekilde �al��t���n� g�rebilirler.(bunu genele almay�n )

    �zet

    Java programlama dilinin genel �zellikleri ile ilgilendik.Programa hen�z ba�lad�k ve gidecek uzun bir yol var,gelecek makaleler dilin tan�mlamas� hakk�nda daha derinlemesine bilgi verecekler.Bundan sonraki makalede , tan�mlamalar ve de�i�kenlerin tipleri, temel yap�lar, s�n�flar  gibi dilin ana �zellikleri �zerinde �al��aca��z.

    Herbir makalede o makalelerin referanslar�n�,k�t�phanelerini ve URL'lerini verece�im.

    • JAVA Reference Manual. Patrick Naughton Herbert Schildt. McGraw-Hill. 
    • Programming with JAVA. Tim Ritchey. Prentice Hall. 
    • Tutorial de Java . Spanish manual in HTML format that can be obtained at www.fie.us.es/info/internet/JAVA. Agustín Froufe. 
    • The Java Tutorial. English manual in HTML www.javasoft.com. Sun. 
    • Tutorial from the JDK distribution. 
    Miguel A Sepulveda taraf�ndan �ngilizce'ye �evrilmi�tir.
    Bu sanaly�renin bak�m� Miguel Angel Sepulveda taraf�ndan yap�lmaktad�r.
    © Jose M. Fernandez 1998
    LinuxFocus 1998