adanzye java wwwjavadilicom

Upload: wwwjavadilicom

Post on 30-May-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    1/13

    A'dan Z'ye Java

    Java sayesinde; animasyonlar, kayan yazlar, web sayfalarnda chat, hesap makinesi,oyunlar, ifreleme programlar, interaktif web sayfalar, mzik, kelime ilemci, kkinternet appletleri, kocaman paket programlar, resim ileme programlar, tercme

    programlar, sipari sistemleri, saatler, yazm kontrol programlar yaplabilir.

    HTML'de Java

    Bir applet hazrladnzda, bunu bir HTML dkmanna yerletirmelisiniz. HTML 3.2 ilebirlikte, Java appletlerin kullanlmasn salayan iki yeni eleman kt. Bunlar APPLET ve

    PARAM. Dier HTML elemanlar gibi bu iki elemann da birok zellikleri mevcuttur. Fakatideali, sadece gerekli olan zelliklerin kullanlmasdr.

    APPLET Elemannn kullanlmas

    APPLET eleman, HTML dkmanna yerletirdiiniz appletin tanmlanmasn vezelliklerinin tanmlanmasn salar. Her HTML eleman gibi, APPLET elemannn da bir

    balang tag ve biti tag vardr.

    APPLET eleman iin gerekli olan zellikler: CODE, WIDTH ve HEIGHT'tir. CODE zelliikullanlacak appleti, WIDTH zellii appletin geniliini (pixel), HEIGHT zellii ise

    appletin yksekliini (pixel) belirlemenizi salar. Aada gerekli olan zellikleri ile birappletin HTML dkmanna balanm eklini gryorsunuz.

    Maximum Bilgi

    Yukardaki rnekte HTML dkman ve "maximumbilgi.class" adl java appleti ayn dizindebulunmaldrlar. ayet java appletifarkl bir dizinde ise, opsiyonel CODEBASE zelliini

    kullanmanz gerekir.

    CODEBASE zellii, appletin bulunduu URLyi belirtmenizi salar. Aadaki rnek,yukardaki rnein hemen hemen aynsdr. Tek fark, java appleti baka bir dizinde

    bulunduu varsaylarak CODEBASE zellii kullanlmtr.

    Maximum Bilgi

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    2/13

    Dier opsiyonel zellikleri yle sralayabiliriz:

    Appletin konumunu belirlemizi salar. Alabilecei deerler ABSBOTTOM, ABSMIDDLE,BASELINE, BOTTOM, CENTER, LEFT, MIDDLE, RIGHT, TEXTTOP, TOP'tr.

    ALIGN

    Appletin altnda ve stnde ne kadar boluk brakabileceinizi belirleyebilirsiniz.HSPACEe vereceiniz deer, pixel olarak ilenir. rnek: HSPACE=10

    HSPACE

    Appletin sanda ve solunda ne kadar boluk brakabileceinizi belirleyebilirsiniz.VSPACEe vereceiniz deer pixel olarak ilenir. rnek: VSPACE=20

    VSPACE

    Appletleri gsteremeyen browserlarda, appletin yerine alternatif bir yaz kmasnsalayabilirsiniz.

    ALT

    Applete bir isim vermenizi salar.

    NAME

    PARAM Elemannn kullanlmas

    PARAM eleman ile applete parametre gnderebilirsiniz. PARAM elemannn sadecebalang tag vardr: . Applete gndermek istediiniz her parametre iin bir tag kullanmalsnz. PARAM taglarn balang tag ile biti tag

    arasna yerletirmelisiniz.

    Appletler, tagnda belirtilen parametrelere "getparameter()" metodu ileularlar. tagnn gerekli iki zellii vardr. NAME ve VALUE. NAME zellii ile

    parametrenin ad belirtilir ki "getparameter" metodu ile bu isme gre aranr. VALUEzellii ise parametrenin deerini verir. Aada, applette kullanlacak resmi, parametre

    ile girilen bir HTML dkman rnei verilmitir.

    Maximum Bilgi

    Java appletinde, resim parametresinin deeri; Resim_logo=getparameter("Resim")komutu ile okunur.

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    3/13

    Veri Tipleri

    Java'da her ey bir nesnedir. Tek istisna veri tipleridir. Java veri tipleri, btnplatformlarda standart bykle sahiptir. Bu standart Java'nn tanabilirliini salyor.

    Aada Java'da bulunan veri tipleri ve byklkleri listelenmitir.

    Veri tipi Byklk

    byte 8-bit

    short 16-bit

    int 32-bit

    long 64-bit

    float 32-bit kayan nokta

    double 64-bit kayan nokta

    char 16-bit Unicode

    Eer C/C++ programcs iseniz "unsigned" tipinin olmad dikkatinizi ekmitir. Byte tipiise C/C++'daki "char" tipinin yerini almtr. Java'daki char tipi 16 bittir. nk Java

    karakter verisinde Unicode karakter setini temel alr.

    Unicode, uluslararas karakterleri destekleyen bir standarttr. Programlarnzn deiikplatformlarda ve lkelerde altrlacandaUnicode ok uygundur. Yukardaki tabloda

    olmayan dier bir veri tipi ise boolean'dr. Bir boolean, deiken numerik deereevrilemez ve sadece iki deer alabilir. Bu deerler "true" ve "false" tur.

    Literaller

    Literaller, deikenlere deer atamak iin kullanlr. Integer'lara C/C++ benzer biimdedeer atanr. 25 gibi tamsay atayabilirsiniz. Hexadecimal bir tamsay atamak iin, saynn

    nne "0x" ifadesi koymanz gerekir. rnein, 15 saysn hexadecimal olarak 0xFeklinde atamalsnz. 8'lik tabanda bir say atamak iin "0" ifadesini, saynn nne

    koymalsnz.

    Kayan noktal saylar ise direkt 5.2345 eklinde atayabilirsiniz. Bunlar 32 bit float veya64 bit double olarak saklanabilirler. Belirtmezseniz, varsaylan 64 bit double'dr. Belirtmek

    iin yapacanz tek ey, saynn arkasna float iin F, double iin D koymaktr. rnein5.323 F veya 5.323 D.

    Karakterler, tek trnak iinde atanrlar. rnein 'a'gibi. Escape karakterleri iin slash (\)kullanlr. Bunlar da trnak iinde belirtilir. \t=tab, \n=satr atlama gibi. Stringler iin ifttrnak kullanlr. "Maximum Bilgi" gibi. Satr atlamas yapmak istiyorsanz "Maximum Bilgi

    \n" kullanmalsnz.

    Deikenler

    Java'da 3 tip deiken vardr: instance, class ve local. Lokal deikenler, metodlarn vebloklarn iinde tanmlanabilirler. Blok, "{" ile balayan ve "}" ile biten ifadeler

    topluluudur. Blok iinde tanmlanan lokal deikenler, blok sonuna kadar geerlidir.Genel format eklindedir. rnein double tipinde pi adl deikeni

    tanmlayalm: double pi; bir deer de atayabilirdik: double pi=3.1415.

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    4/13

    Deikenler; harf, say, dolar iareti, alt izgi ilebalayp bu karakterlerle devam edebilir.Ama komutlar, operatrler deiken ismi olarak kullanlamazlar.

    Aklamalar

    Programlarnza aklama koymak iin, Java'da kullanabileceiniz iki stil vardr. Birincisiift slash ( // ). ift slash'tan satr sonuna kadar olan ksmda bulunan her ey aklama

    olarak kabul edilir.

    kincisi ise slash ve yldz ( /*) ile balar yldz ve slash ile biter. Bunlar arasndaki herey, aklama olarak kabul edilir. rnek 1: double pi; // pi deikeni double olarak

    tanmland. rnek 1: /* Bu programn amac saysal loto tahmini yapmaktr.

    Operatrler

    Java'da bulunan operatrler aadaki tabloda verilmitir.

    Kategori Operatr

    Aritmetik + - * / %

    likisel < > >= >>> ~ &= |= ^=

    Artrma ++

    Azaltma --

    Aada iki deiken tanmlanp, bunlara deer atanyor. Daha sonra ise bu iki deikeninierii toplanyor:

    int x,y ;x= 3 ;y=4 ;

    int z=x+y ;

    Z 'nin deeri yedidir. Operatrlerin ncelik sras aadaki tabloda gsterilmitir.

    [] ()

    ++ - ! ~* / %

    + -

    > >>>

    < > =

    == !=

    & ^

    |

    &&

    ||

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    5/13

    = ve dierleri

    Bit ilemleri

    Ayrlm Kelimeler

    Aadaki tabloda, Java'nn komutlar olarak kullanlan kelimeler listelenmitir. Bukelimeler, Java iin ayrlmtr. Yani bu kelimeleri deiken ismi gibi eyler iin

    kullanamazsnz. Bunlar snf tanmlamas, deiken tipi belirleme, koul, dng gibiilemler iin kullanlr.

    Abstract boolean

    break byte

    byvalue case

    catch char

    class const

    continue default

    do double

    else extends

    false final

    finally float

    for goto

    if implements

    import instanceofint interface

    long native

    new null

    package private

    protected public

    return short

    static super

    switch synchronized

    this threadsafe

    throw transient

    true try

    void while

    Karlatrmalar

    Karlatrmalar, genelde bir karlatrmann sonucuna gre belirtilen komut veyakomutlar altrrlar. Eer birden fazla komut kullanlacak ise blok iinde olmaldr. Tek

    bir komut iin buna gerek yoktur. rnein; a deikenin deerinin bir olup olmadnkontrol ediyoruz. Eer a=1 ise a=2, deil ise a=1.

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    6/13

    Grld zere karlatrma, boolean bir deer dndrmelidir. Yani true (doru) veyafalse (yanl) deerini dndrmelidir ki bu deere gre ilenecek komutlar belirlenebilsin.

    Java'da karlatrma yapmak iin "if...else..." kullanlr. Format u ekildedir:

    if (karlatrma){ karlatrmann sonucu

    doru ise ilencek komutlar}

    else{ karlatrmann sonucu

    yanl ise ilencek komutlar}

    Yukardaki rnei java formatnda yazarsak :

    if (a==1) // Java'da = operatr atama iin kullanlr.// Karlatrma iin == operatrn kullanlr.

    a=2;else

    a=1; // Tek komut olduu iin blok iine alnmasna gerekyoktur.

    Eer birok karlatrma varsa, i ie karlatrmalar (if ) kullanlabilir. Sonucu nmerikolan karlatrmalar iin "switch...case..." komutu kullanlr. Bu komut, sadece nmerik

    deerler iin kullanlr. Format u ekildedir:

    switch (deiken){

    case 1: // deikenin deeri 1 isebreak;

    case 2:{// deikenin deeri 2 ise

    break;}

    default: // yukardaki deerler haricindeki deer isebreak;

    }

    Dngler

    Java 'da tane dng ilemi vardr. "for" dngsnn yaps aadaki ekildedir. for (ilkdeer; test; deer artrma/azaltma) Bu yapda grlen ilk deer ifadesi, deikeninizin

    alaca ilk deerdir. Test ifadesinde ise basit veya kompleks bir karlatrmakullanabilrisiniz. Deer arttrma veya azaltma ise deikeninizin o anki deerini

    deitirecek bir ifadedir. "for" dngsn rnek kullanm:

    for (sayac=0;sayac

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    7/13

    sayac=0;while (sayac

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    8/13

    int boyut=numbers.length / / boyut=5 olur

    Java'da ok boyutlu diziler yoktur. Fakat bu tr diziler dizi iinde dizi oluturularak simleedilebilir.

    int k[][] = new int[5][4]; / / 5-4 boyutunda bir dizi

    k[1][3] = 999; // Deer atama

    Bilgi Alma ve Yazdrma

    Ekrandan bilgi almak iin BufferReader snfn kullanacaz. BufferReader giris=newBufferReader( new InputStreamReader (System.in)); Bu snfn readLine() metodunu

    kullanarak bilgiyi alyoruz:

    try {String girilen=giris.readLine();

    } catch (IOException e ) { System.out.prinln(e);}

    try-catch blou olas bir hatay yakalamak iin kullanlyor. Eer bir hata oluursa hatayekrana yazacak. imdi de girileni yazdralm. Ekran birey yazdrmak iin System.out

    snfnn println metodunu kullanacaz :

    System.out.println ("Girdiiniz ey : " + girilen );

    println metodu ekrana verilen parametredeki yazy yazdktan sonra imleci bir alt satrageirir. ayet imlecin bir alt satra gemesini istemiyorsanz print metodunu kullann.

    Ama bu metodu kullandnzda ekrana bilginin kmas iin akabinde flush metodunudakullanmalsnz. u ekilde :

    System.out.print("A li " );System.out.flush();

    Java Sertifikas

    Java internet ortamna girdiinde, javay destekleyen browserlardaki buglar yzndenou kullanc java zelliini kapatmak durumunda kalmt. Gnmzde javann

    gvenlii artm durumda. Bunda browserlarn buglarnn azalmasnn rol olduu gibisertifika kavramnnda byk rol vardr.

    Sertikasz/aretsiz Appletler Neler Yapabilir?

    Kullanclarn bilgisayarnda istenmeyen ilemlerin yaplmasn engellemek iin, herbrowsern gvenlik snrlamalar vardr. Bu gvenlik snrlamasnn tr browsera gredeiir. Gnmzdeki browserlarn java appletlerin iin aadaki gvenlik snrlamalar

    vardr:

    - Appletler kullancnn bilgisayarndan veri okumaz ve yazamazlar.- Kullancnn bilgisayarnda program altramazlar.

    - A balants sadece appletin bulunduu server ile kurulabilir.- Sistem ayarlarn deitiremezler.

    Bu gvenlik snrlamalarna bakld zaman normal bir applet sadece grafik veya yazgsterme, ses ve animasyon ilemlerini yapabilir. Byk iler iin normal appletler uygundeildir ki kk bir veri girii dahi olamadan die dokunur uygulama yapmak mmkn

    deildir.

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    9/13

    Sertifikal ve aretli Nedi?

    Appletlerin web sayfalarn daha grsel hale getirmekten baka bir ie yaramad abukanlald. Ama daha fazlasn; mesela kulancdan bilgi almak ve yazmak; yapabilmek iin

    gvenlik snrlamalarn kaldrmak gerekiyordu. Fakat bunun mmkn olduu gvenliolmas iin, appletler yeni browserlar iin iaretlenebiliyor.

    Bunun iin applet gelitiricisinin amacn belirten sertifaya ihtiyac vardr. Sertifa browserokuyabilecei ekilde aktr ve gelitiricinin adn ve kontrol kodu ierir. Bu sertifaka ilegelitirici appleti gvenli olarak iaretler. Baka hi kimse bu sertifikay kullanarak bir

    appleti iaretletyemez. nk gelitirici appleti iaretlemek iin sertifika ile birlikte verilenzel kodu kullanr.

    Kullanc, appleti altrdnda ( applet olan bir web sayfasn ardnda ) browserappletin iareti ile sertifikay karlatrr. Bylece appletin iareti sertifaka ile uyumlu isealtrr. Bu u anlama geliyor: Doru iaretli bir appletin gelitiricisini kullanc applet

    yklenirken grr. Ama sadece applet yklenirken.

    aretli Appletler Neler Yapabilir?

    aretli bir applet yklendiinde kullancnn karsna bir pencere gelir. Bu penceredesertifika hakknda bilgiler vardr ve kullanc onay istenir. Kullanc bu bilgiler nda

    appletin almasna izin verir veya vermez. Kullancnn almasn onaylam bir appletnormal programlarn yapabildii her eyi yapabilir.

    Bu Durumdaki Gvenlik

    Buradaki problem onaylama ileminin ya hep ya hi mantnda ilemesidir. Bunun anlamonayladnz bir appletin gerek amacnn dndaki verileride okuyabildii veya

    istenmeyen bir yere veri yazabildiidir. Tam anlamyla eriim haklarnn belirlenmesiprogramclara ar geldii iin ou programc tarafndan yaplmyor. Yine de Microsoft veNetscape'in browserlar iin eriim haklarnn deiik ekilde belirlenmesi karsnda

    programclar minimum dzeyde eriim hakkyle yetiniyorlar.

    kinci bir problem ise sertifikann gerekliidir. Gerek sertifikalar, programc tarafndandeil, programcnn gvenilirliine kefil olan irketler tarafndan oluturulmu

    sertifikalardr. Bu irtketler para karlnda sertifika oluturmaktadr. Bir sertifika en az$200 balayp sertifikaya gre artmaktadr. Programc yllk olarak $100 balayan

    fiyatlarda demek zorundadr. ou programc iin bu fiyatlar ar pahal gelmektedir.

    En azndan herkes bedava kendi sertifasn oluturabilir. Fakat byle bir sertifa,

    programcnn gerekte kim olduunu ve amacnn doruluunu belirtmez. Hatta testsertifikalar diye anlanlar istenen herhangi bir isim ile oluturulabilir. Her ne kadar insankorkutsada, bilinmeyen bir shareware program denemekten daha gvenlidir. Appleti

    onaylamak veya onaylamamak bizim elimizde deil mi?

    Sertika irketleri

    Gerek sertifakalar sertifa irketleri ( Certificate Authority ksa CA ) tarafndan veriliyor.Bu irketler programncnn yada irketlerin amacn kontrol ettikten sonra sertifika

    veriyorlar. En tannm sertifika irketleri VeriSign, Thawte ve BelSign

    Her CA, verecei sertifikalar kendi sertifikas altna tanmlar ki daha nceden gvenli

    belirlenmi kendi sertifikalar gibi ilem grsnler. CA'lar kendilerineait sertifikalar dahanceden browserlara tanmlanm ve kurulmutur. Maalesef bu irketlerin verdikleri

    .

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    10/13

    hizmetin bedeli yksek. Bir defaya mahsus cret $200 dan balyor, yllk cretler ise100$ dan. uana kadar iaretli appletlern yaygnlamamasnn en byk nedeni bu olsa

    gerek.

    Test Setifikalar

    Test sertifikas herkes tarafndan be kuru denmeden oluturulabilen sertifikalardr.Ama programcnn amacn gerek olarak ispatlamayan sertifikalar bunlar. Bu

    sertifikalarda browsera gre deiiyor. BirNetscape ve birde Microsoft iin oluturmakgerekiyor. Sun'n HotJava browserna hi girmeyeceim burda, belki ileride onuda ele

    alrm.

    Microsoft Browser in Test Sertifakas

    Microsoft browser sertifikas oluturmak iin, Microsoft'un sitesinden bedavaindirebileceiniz " Software Developer's Kit ( SDK)

    Bu kit ile gelen ingilizce dkmantasyon tam olarak okunmal, nitekim olmazsa olmazbirok nemli parametre mevcut. Burada bu kitin iindeki DOS programlaryla sertifika

    oluturulmasn ksaca anlatmaya alacam. Bu sadece balang iin yardmniteliindedir. Gerisini dkmana brakyorum.

    " e ihtiyacnz var. Bu yazlm kitininiindeki programlarn tek tek indirilememesi tabii ki ok kt bir durum. Bu kitin iindekiherhangi bir program iin 20 MB byklndeki bu kiti indirmek zorunda kalyorsunuz.

    Ama bu kiti CD olarakta sipari edebiliyorsunuz.

    makece r t ile Private/Public Key oluturun. Sertifika iin gerekli olan .cer uzantl birdosya oluacaktr.

    ce r r t2spc ile sertifikay oluturun. Birinci admda oluturduunuz .cer uzantl dosyadan

    .spc uzantl bir dosya oluturur.

    cabarc ile class dosyalarnz cab dosyas haline getirin. Bu cab dosyas Internet Explorertarafndan indirilecek dosyadr.

    Oluturduunuz cab dosyasn s igncode ile iaretleyin. Bu ilem srasndaoluturduunuz .spc uzantl dosyada kullanlacaktr.

    Netscape Browser in Test Sertifakas

    Netscape programclarn iini biraz daha kolaylatrm Microsoft'a gre, sertifika iingerekli olan "Signtool" uramadan indirebilecek ve Microsoft'un kitine gre daha kolay

    kullanm var. Signtool Win95 ve Unix srmleri var. Ksaca admlar:

    signtool ile Private ve Public Key oluturmak iin -G parametresini kullann. Bu ilem ile x509.cacert adl bir dosya oluacaktr. signtool ile class dosyalarnz jar dosyas haline getirin.

    Bu ilemleri batch dosyas ile de yapabilirsiniz.

    JAVA P LUG-IN

    Bundan birka yl nce Sun, HotJava adl web browser piyasaya kard. Sun'n bu webbrowser, Java'y destekliyordu. Buda iine java nesneleri gmlebilen uygulamalarn ilk

    rneini tekil ediyordu. Bunun ardndan Netscape kendi web browsernada Javadesteini ekledi. Ardndan da MS.

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    11/13

    Gn getikce Java'nn yeni srmleri kt. Bununla birlikte Netscape ve MS kendiihtiyalarna uygun snf ktphanelerini eklediler browserlarna. Bylece her browsernkendine zel JVM ( Java Virtual Machine ) 'i oldu. Dolaysyla browserlarn iine gmlen

    JVM ile browserdan bamsz olarak JVM 'i gncellemek imkanszd.

    Sun, herhangi bir ortamda Java'nn alabilmesiiin gerekli olan her eyi ieren ( Java

    VM ve snf ktphaneleri ) JRE 'yi kard. Eer JRE bilgisayarnzda yklyse, herhangibir uygulamaya ( rnein browser ) gmlm java nesneleri alabiyor. Sorun,

    browserlarn sadece kendi JVM lerine bakmalar ve makinada ykl olan JRE 'ye ulamakiin bir mekanizmaya sahip olmamalaryd. Sun olaya el att : Java Plug-In

    Sun'n gelitirdii Java Plug-In, JRE 'ye HTML sayfalarndan browser kullanarak ulamakiin bir mekanizma. Java Plug-In, Sun'n web sitesindenbedavaya indirilebiliyor. Sayfayagirildiinde, istenen java srm kullancnn makinasnda ykl deilse, kullanc Java

    Plug-In sayfasna ynlendirilir. Java Plug-In, Netscape'de plug-in olarak, IE 'de iseActiveX Control olarak otomatik yklenir.

    Java Plug-In Kullanmak

    Java Plug-In, Netscape'de EMBED, IE 'de ise OBJECT tag sayesinde kullanlabilir. MIMEtipi ile istenen java srmn belirtmelisiniz. rnein Java 1.2 srmnn zelliklerini

    kullanan bir appletiniz varsa, MIME tipinde bunu belirterek appletinizin doru almasnsalarsnz.

    MIME Tipi Nesne Tipi / Srm

    application/x-java-applet;Applet / Mevcut

    srm

    application/x-java-

    applet;version=1.1Applet / Java 1.1

    application/x-java-

    applet;version=1.2Applet / Java 1.2

    application/x-java-bean; Bean / Mevcut srm

    application/x-java-bean;version=1.1 Bean / Java 1.1

    HTML sayfasna appletinizi geleneksel yntemlerle koymak isterseniz, yani Java Plug-Inkullanmak istemiyorsanz APPLET tagn kullanmanz gerekir. Java Plug-In kullanmak

    istiyorsanz;

    Netscape iin EMBED tagn kullanmalsnz :

    Applet Desteklenmiyor

    http://if%28confirm%28%27http//java.sun.com/products/plugin/1.1/index.html%20%20/n/nThis%20file%20was%20not%20retrieved%20by%20Teleport%20Pro,%20because%20it%20is%20addressed%20on%20a%20domain%20or%20path%20outside%20the%20boundaries%20set%20forhttp://if%28confirm%28%27http//java.sun.com/products/plugin/1.1/index.html%20%20/n/nThis%20file%20was%20not%20retrieved%20by%20Teleport%20Pro,%20because%20it%20is%20addressed%20on%20a%20domain%20or%20path%20outside%20the%20boundaries%20set%20forhttp://if%28confirm%28%27http//java.sun.com/products/plugin/1.1/index.html%20%20/n/nThis%20file%20was%20not%20retrieved%20by%20Teleport%20Pro,%20because%20it%20is%20addressed%20on%20a%20domain%20or%20path%20outside%20the%20boundaries%20set%20forhttp://if%28confirm%28%27http//java.sun.com/products/plugin/1.1/index.html%20%20/n/nThis%20file%20was%20not%20retrieved%20by%20Teleport%20Pro,%20because%20it%20is%20addressed%20on%20a%20domain%20or%20path%20outside%20the%20boundaries%20set%20for
  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    12/13

    PLUGINSPAGE ve TYPE alt tagn kullanmanz gerektiini unutmaynz. nk browserJava Plug-In ykleme sayfasn ve srm bilmesi gerekir. APPLET tagnda kullanlan

    PARAM alt tagn bu durumda kullanmazsnz. Parametreleri direkt, rnekte grld gibi( parametre1="2") direkt yazmalsnz.CODE, CODEBASE,WIDTH,HEIGHT gibi alt taglar

    APPLET tagnda olduu gibi kullanlr.

    Internet Explorer iin OBJECT tagn kullanmalsnz :

    Applet desteklenmiyor

    Burada CODEBASE alt tag gml nesnenin gerektirdii ActiveX Controlnn yeridir.Java'ya ait codebase, type, code gibi taglar PARAM alt tag ile belirtilir.

    Netscape ve IE iin farkl yntemlerin kullanlmas, her biri iin ayr web sayfalarmzolaca anlamna gelmiyor. HTML kodu kullanarak her ikisi iinde geerli bir sayfa

    hazrlayabilirsiniz. Fakat byle bir HTML kodu yazmak iin kendinizi kasmayn. nkSun, Java Plug-In ile beraber HTML eviricisi ( HTML Converter ) sunuyor. Bu evirici

    sayesinde HTML sayfasnda kullanlan APPLET taglar her iki browserda da kullanlabilecekekilde evriliyor.

    Applet Neden almyor?

    Appletler, dinamik web tabanl ierik iin en ideal programcklardr. Teorikte bir kere yaz,her bilgisayarda, her browserda ve her iletim sisteminde altr; mantn ileri sren

    Sun bunu "Bir kere yaz, her yerde altr ( Run Once, Run Anywhere ) " sloganyla lanseediyor.

    Pratikte, birok java programcs ve birok kullanc Java appletlerinin baarsna sebepolduunu sylyorlar. "Neden applet almyor ?" ierikli birok mail geliyor.

    Applet alt zaman tam alyor, almad zaman ise byk bir sorun halini alyor.Hatay bulmak ve hatay dzeltmek gerekten baarsna neden olabiliyor. Hatta Java ile

    program gelitirmeyi bu yzden brakanlar bile var. Deiik browserlar, browsersrmlerinin farkllklar, hatta browser konfigrasyonlarndaki farkllklar appletlerin

  • 8/14/2019 AdanZye Java WwwJavaDiliCom

    13/13

    almasnda rol oynayabiliyor. Browserlara gml Java Sanal Makinasndaki ( JavaVirtual Machine ) buglar ve bilgisayarn performansda etkili oluyor.

    ayet browser'nz hibir appleti altramyor ise, java applet ihtiva eden bir sayfayardnzda taklp kalyorsa browser yazlmn tekrar kurmak ou zaman problemi

    ortadan kaldryor. Bu sz konusu deilde, gri bir dikdrtgenden baka bir ey

    gremiyorsanz bunun bir ka sebebi olabilir.

    Neden Gri Dikdrtgen?

    Appletin yklenmesi srasnda veya yklendikten sonra altrlmas srasnda meydanagelen hatalardan dolay oluur. Java programlama dilinde bunun teknik ad "Exception"

    dr. Java'da hatalar yakalama imkan olduunu biliyoruz, daha dorusu bilinen ouhatay desek daha iyi olur. Oluan hatalar bilinmedik, beklenmedik hata veya appletdenkaynaklanmayan hatalar olabildii iin bu hatalar yakalama imkan yok. imdi en ok

    karlalan ve bilinen hatalar inceleyelim :

    Bilindii gibi applet dediimiz programcklar, derlendikten sonra class dosyas halinialyorlar. Appletlerin almas iin bu class dosyalarnn yklenmesi gerekiyor. ayetclass dosyasnn yeri bulunamaz veya dosya yklenirken hata oluur ise gri kutunun

    iinde class dosyasn bulunamadna dair veya yklenirken hata olutuuna dair bir hatamesaj kar ve applet almaz. Applet almad iin, ki hata daha applet yklenirken

    olutuu iin, applet kodu iinden bu hatay yakalamanz ve engellemeniz mmkndeildir. Bu hata ou durumda, tag iinde class dosyasnn bulunduu yeri

    yanl olarak belirtildii zamanortaya kyor.

    Class dosyasna ulaamama veya ykleyememe

    Baz zamanlara zerinde bulunana server ger veya herhangi bir sebepten balantkurulamaz. Kullanc firewall arkasndadr ve Socket, DatagramSocket istekleri almaz.

    Eer a kaynaklarna eriim gerektiren bir applet yazyorsanz, iletiim iin TCP/UDPprotokl yerine HTTP protokln kullann. nk firewall arkasnda olan kullanc saysgn getike artyor. Karlalan dier bir hata sebebi ise, browserlarn appletler ile ilgili

    kstlamalarndan kaynaklanyor.

    A kaynaklarna eriememe

    Appletviewer'da sorunsuz alan applet, browserda almyor. Applet sadece bulunduuserver ile balant kurabilir. Birok applet ise domain isimlerini IP adresine evirirken hata

    oluturuyorlar. Bunu nlemek iin domain ismi yerine IP adresi kullann.

    ok karlalan hatalardan biriside NULL hatalardr. Bu appletin kodundan kaynaklananve appletin almamasn salayan bir hatadr. Bir deikene bir nesne atarken, nesnenin

    deerinin Null ( deersiz ) olmamasna dikkat edin. Aadaki rnei inceleyin:

    Null Hatalar

    rnek:String sayac = getParameter (" sayac"); / / sayac parametresini al

    if ( sayac == null ) // Eer sayac null isesayac = "1"; // sayac deerini "1" yap.

    Biraz dikkat ile, web sayfalarnda nmze kan gri dikdrgen kutucuklar azaltabiliriz.