*Sitemize Üye Olunca Elinize Ne Geçer?

<--- 1. Üye Olarak Linkleri Görebilirsiniz... --->

<--- 2. İstediğiniz Kadar Paylaşım Yapabilirsiniz... --->

<--- 3. Güzel Bir Forum Hayatı Yaşayabilirsiniz... --->


Join the forum, it's quick and easy


*Sitemize Üye Olunca Elinize Ne Geçer?

<--- 1. Üye Olarak Linkleri Görebilirsiniz... --->

<--- 2. İstediğiniz Kadar Paylaşım Yapabilirsiniz... --->

<--- 3. Güzel Bir Forum Hayatı Yaşayabilirsiniz... --->

Would you like to react to this message? Create an account in a few clicks or log in to continue.

● En Güncel Paylaşım Platformu ●

---Misafir--- Hos Geldiniz Daha iyi Bir Hizmet İçin Üye olunuz.ÜyeLer Link GörebiLir

    1.2 Java Programini Yazma Ve ÇaliŞtirma

    MnyTirith
    MnyTirith
    ● Admin ●
    ● Admin ●


    <b>Doğum tarihi</b> Doğum tarihi : 20/06/90

    1.2 Java Programini Yazma Ve ÇaliŞtirma Empty 1.2 Java Programini Yazma Ve ÇaliŞtirma

    Mesaj tarafından MnyTirith Salı Mart 09, 2010 8:10 pm

    Her programda
    olduğu gibi java programlarında da ilk evre programı yazmaktır. Java
    programları her editör programıyla yazılabilirler.
    Her
    programda olduğu gibi java programlarında da ilk evre programı
    yazmaktır. Java programları her editör programıyla yazılabilirler.
    Örneğin Unix sistemlerinde vi veya emacs,windows 95 ve windows NT de DOS
    Edit,veya Windows Notedefteri (notepad) veya WordPad programları
    kullanılabilir. Bildiğiniz ve kullanmakta rahat olduğunuz herhangi bir
    editör programı varsa rahatlıkla kullanabilirsiniz. Windows Notedefteri
    (notepad) editörüyle ilgili karşılaşacabileceğiniz bir programı burada
    hemen belirtmekte yarar var. Bu program tüm dosyaların arkasını txt eki
    getirmeye çalışır. Programı direk içinde yazıp çalıştırabilen Microsoft
    Visual J++, Symantec Visual Café, Jpad, Borland JBuilder gibi Java
    geliştirme paketleri de mevcuttur. Bu kitapta bu paketler yardımıyla
    program yapılmasına direk olarak hiç değinilmemiştir. Kişisel olarak bu
    tür paketler java dilini öğrenme açısından bilhassa yeni programlama
    öğrenenlere çok fazla yardımı olacağını sanmıyorum, üstelik sadece o
    paketi kullanmayı öğreneceğiniz için bir tür bağımlılığa sebep
    olabilirler. Fakat bu paketler uzman hale geldikten sonra işinizi
    kolaylaştırmak açısından çok yararlı olabilir.

    Şüphesiz programı yazmadan önce Java compilerının bir kopyasını
    edinmeniz de gerekir. Java geliştirme seti (Java Developers kit - JDK)
    SUN bilgisayar şirketinin

    [Linkleri görebilmek için üye olun veya giriş yapın.]


    veya

    [Linkleri görebilmek için üye olun veya giriş yapın.]


    internet adreslerinden bedava çekilebilir. Çekme
    zahmeti istemiyorsanız SUN bu programları CD formatında da satmaktadır.
    Sun programın kitaplar ve üçüncü el kaynaklarda verilmesine müsade
    etmemektedir. Ayrıca derleyici sürekli olarak yenilendiğinden orijinal
    kaynağından her zaman en yeni versiyonunu elde edebilirsiniz. Java ile
    yaptığınız lisans anlaşmasına göre program dilini bedava olarak
    kullanabilirsiniz, ancak satacağınız profesyonel bir program
    geliştirdiğinizde sun şirketine kazancınız üzerinden belirli bir yüzde
    ödemeniz gerekecektir.

    Java programı isim.java seklinde editörle yazılır. Java programınız
    yazıldıktan sonra ilk step java derleyici (compiler) programıyla
    isim.class ara bilgisayar kodunu oluşturmaktır.

    Java programını yazarken dikkat etmeniz gereken diğer bir özellik de
    javanın nesne sınıfının ismiyle dosyadaki isminin aynı olmasıdır.
    Bilgisayar konsol ekranında (DOS veya UNIX Console)

    javac isim.java

    Komutunu bilgisayara gönderdiğinizde programınızda hata yoksa java
    derleyicisi isim.class dosyasını yaratır. Eğer programınızda hata varsa
    hataların listesini verir. Programlamanın dili ingilizce olduğundan bu
    hata açıklamaları da ingilizcedir. Editör programına geri dönüp hataları
    düzeltmeniz, programı tekrar kaydetmeniz ve sonra bu komutu tekrar
    denemeniz gerekecektir. Java programları iki ortam için yaratılabilir.
    Birincisi Konsol ortamıdır (DOS, Unix console gibi). Konsol ortamını
    kullanırken java dilinin konsol komutu java kullanılarak isim.class
    dosyası yerel bilgisayarın makine diline program çalışırken
    dönüştürülür. Bu temelde bir tercüme (interpretation) işlemidir. Sonuç
    olarak java dilinde iki kademeli bir proses kullanılır, birinci işlemde
    java dosyası class dosyasına çevirilir (derlenir), ikinci işlemde ise
    class dosyası yerel bilgisayarın makine diline dönüştürülür. konsol
    ortamında çalıştırılan program sonuçları yine konsol ortamında alınacağı
    gibi pop-up pencere grafik ortamında da alınabilir. İkincisi ise
    internet browser penceresi (Applet) ortamıdır. Eğer Program konsol
    ortamında yazılmışsa

    java isim

    komutu kullanılarak sonuçlar ekranda veya açılan bir pencerede
    görülebilir. Eğer Program applet ortamında yazılmışsa java programına
    ilave olarak html dilinde isim.html dosyası açılır. En basit şekilde
    html dosyası şu şekilde tanımlanabilir :










    Buradaki width pencerenin enini pixel olarak,
    height’da yüksekliğini yine pixel(görüntü noktası) olarak vermektedir.
    daha sonra bu dosya konsoldan

    appletviewer isim.html

    komutuyla çalıstırılabilir. Buradaki appletviewer komutu java program
    paketindeki basitleştirilmiş bir browser programıdır. Bu komut yerine
    isim.html dosyası herhangi bir browser programına yüklenerek
    görülebilir. Burada hemen şunu not etmeliyiz: browser program yazıcıları
    genelde java versiyonlarını kendi programlarına aktarmakta biraz yavaş
    kalmaktadırlar bu yüzden en yeni java derleyicisiyle derlediğiniz bir
    programı browser’inız göstermeyebilir. Buna karşılık java “plug-in”
    denilen küçük programlar geliştirmiştir. Diğer bir olasılıkta elbette
    eski java derleyicinizi hemen atmayıp bir süre daha (yeni versiyonu
    browser programları tarafından tam olarak tanınıncaya kadar) profesyonel
    applet programları geliştirirken kullanmanızdır.

    Programcılıkta adeta adet haline gelen ilk uygulama daima o dilde ekrana
    Hosgeldiniz çiktisi almaktır. Bizde bu kuralın dışına çıkmayalım.
    Aşağıdaki listede ilk konsol programımız Hosgeldiniz.java görülmektedir.

    Program 1.1Hoşgeldiniz.java
    konsol programı


    import java.io.*; //java girdi cikti sinifini
    cagir
    class Hosgeldiniz
    {
    public static **** main(String args[])
    {
    System.out.println("Java Sinifina Hos Geldiniz!");
    }
    }

    bu programı çalıştırmak için

    bu programı çalıştırmak için

    javac Hosgeldiniz.java
    java Hosgeldiniz

    komutlarını konsolda vermemiz yeterlidir
    konsol çıktısı olarak:

    Java Sinifina Hos Geldiniz!

    Yazısını alırız.
    Şimdi bu programdaki satırlara tek göz atalım.

    import java.io.*; Bu deyim java konsol girdi çıktı kütüphanesindeki
    metotları programımıza aktarır.

    //java girdi cikti sinifini cagir
    // işaretiyle başlayan yazılar bilgisayar tarafından kullanılamaz sadece
    programı okuyanı bilgilendirmek amacı taşır /* ..... */ işaretleriyle
    de verilebilir. Örneğin :

    /* Bu kısımda yazılanlarla bilgisayar ilgilenmez Sadece insanların
    programı anlaması içindir
    */

    class Hosgeldiniz Class (sınıf) nesne kökenli programlama yapısının
    temel taşıdır. Her Class'ın kendine özgü bir ismi olması gerekir. Daha
    önce yazılmış Class'lar import deyimiyle programa çağırılabilirler.
    Yeniden yazılmaları gerekmez. Class yapısı ve tanımlamaları üzerinde
    daha sonraki bölümlerde çok daha detaylı bilgi verilecektir.

    { } başlatma ve bitirme : Sınıf tanımlaması da dahil olmak üzere Tüm
    Program parçacıkları { işaretiyle başlar ve } işaretiyle son bulur. {}
    işaretleri arasında yazılan program parçacıklarını normal metin
    yazılmasındaki paragraf kavramına benzetebiliriz. Ayrıca program koduna
    baktığımızda "; " işaretine sık sık rastlıyoruz. Bu işaret java
    komutunun bittiğini belirtir. Cümle yağısında kullanılan nokta ". "
    işareti gibi işlev görür. Java programlarını istersek " ;" ve "{} "
    ayraçlarını kullanarak tek bir satır olarak yazabiliriz. Fakat bu
    programın bizim tarafımızdan okunurluğunu zorlaştırır. Program kodunu
    yazarken boşluk ve satır aralıkları bırakarak insanlar tarafından
    programın okumasını kolaylaştırabiliriz. Modern programcılıktaki en
    büyük sorunlardan biri bigisayar kodlarının bakım ve onarımı sorunudur.
    Ticari olarak yazılan her programın belli bir ömrü olduğunu ve daha
    sonra başka bir programcı tarafından üzerinde tekrar çalışılacağını
    sürekli olarak hatırlamak zorundayız.

    public static **** main(String args[]) diğer dillerde fonksiyon
    (function), subroutine, procedure gibi adlarla anılan Program alt
    parçacığının başlığı. Bu Program parçacıkları javada Metot (Method)
    adıyla anılır. Metotların girdileri ve çıktıları olabilir. Bu metotun
    adı main (ana Program) dır. String değişken türü args[] değişkeni girdi
    olarak girebilir. Bu metotta **** çıktı türü kullanılmıştır. ****
    kelimesi bu metotdan hiçbir çıktı alınmayacağını belirtir. public metota
    dışarıdan ulaşılabilme izni verir.

    System.out.println ("Java Sinifina Hos Geldiniz!"); Bu satır System.out
    sınıfından println metotunu çalıştırır. Bu metot method girişinde
    gönderilen String tipi değişkeni konsol çıktısına aktarır. Fortran
    dilindeki write(*,*) veya print*, c dilindeki printf, c++ dilindeki
    cout<< terimlerinin javadaki tam karşılığıdır.

    Java Sinifina Hos Geldiniz!" stringi aynen aktarılırken içinde c dilinde
    kullanılan temel kontrol terimleri yer alabilir ve aynen c dilindeki
    anlamlarıyla kullanılabilir. Bu kontrol terimlerinden en yaygın olarak
    kullanılan bazıları:


    alt satıra geç

    bir sonraki tab’a atla


    gir tuşu bas

    işaretini yaz

    ” “ işaretini yaz

    şeklinde gösterilebilir.

    İkinci konsol programımız HosgeldinizSW.java Program 1.2 de verilmiştir.
    Bu program SWING kütüphanesinin alt kütüphanesi olan JoptionPane
    kütüphanesi kullanılarak yaratılmıştır. Çıktı yazısı ekranda grafik
    pencere olarak belirir ve Java sınıfına Hos geldiniz! mesajını verir.
    Tüm bu kütüphanelerin detayları ilerideki bölümlerde verilecektir.
    Şimdilik nasıl kullanıldıklarını öğrenmekle ve programlarımızı örnek
    programlara benzeterek yazmaya çalışacağız. Uzman programcılar
    isterlerse ilgili bölümlerden komut detaylarına derhal girebilirler.

    Program 1.2 HosgeldinizSW.java
    programı



    import javax.swing.JOptionPane ;

    class HosgeldinizSW {
    public static **** main (String args[])
    {
    JOptionPane.showMessageDialog (null,"Java sınıfına hoş geldiniz!",
    "HosgeldinizSW programı",JOptionPane.INFORMATION_MESSAGE);
    System.exit(0) ;
    }
    }


    Bu programı

    javac HosgeldinizSW.java
    ve
    java HosgeldinizSW
    komutlarını kullanarak çalıştırdığımızda

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01001
    Şekil 1.1 HosgeldinizSW dosyasının konsol SWING pop-up grafik çıktısı
    kullanarak görülmesi
    Bu çıktıyı alabilmek için java SWING kütüphanesi içerisinde yer alan JOptionPane.showMessageDialog(....)
    metodunu kullandık. Bu metodun görevi System.out.println metoduyla
    aynıdır. Farkı ise grafik ortamda çıktı vermesidir. Metot içindeki
    ikinci sırada verilen String tipi sabit , "Java sınıfına hoş geldiniz!"
    grafik çıktıya aktarılmıştır. Üçüncü sırada verilen string tipi
    "HosgeldinizSW programi" sabiti de grafik kutusunun adını belirtmiştir.
    JoptionPane.INFORMATION_MESSAGE komutu ise bilgi (information) mesajı
    penceresi açılacağını belirtmiştir. (grafikteki i harfi – information –
    bilgi kelimesinin baş harfidir). Bu alanda kullanabileceğimiz değişik
    mesaj türleri şunlardır :

    JOptionPane.INFORMATION_MESSAGE : bilgi mesajı 1.2 Java Programini Yazma Ve ÇaliŞtirma Image047
    JOptionPane.ERROR_MESSAGE : hata mesajı 1.2 Java Programini Yazma Ve ÇaliŞtirma Image050
    JOptionPane.WARNING_MESSAGE : uyarı mesajı 1.2 Java Programini Yazma Ve ÇaliŞtirma Image048
    JOptionPane.QUESTION_MESSAGE : soru mesajı 1.2 Java Programini Yazma Ve ÇaliŞtirma Image049
    JOptionPane.PLAIN_MESSAGE : sade (ikonsuz) mesaj

    System.exit(0); metodu
    çıktı penceresinde görülen OK düğmesine basıldığında pencerenin
    kapanmasını sağlar. import
    javax.swing.JoptionPane;
    deyimi swing kütüphanesinde yer
    alan JoptionPane sınıfını çağırır. Programdan da görüleceği gibi
    sınıfımızın (class) adı HosgeldinizSW dir. Bir önceki programdaki gibi
    bu programda kullandığımız komutlar public
    static **** main(String args[])
    komutuyla tanımlanan ana
    metodun içinde yazılmıştır.

    Üçüncü konsol program örneğimizde iki java programını birleştireceğiz
    İlk programımız BasicWindowAdaptor.java Program 1.3 de verilmiştir.
    Program 1.4 ise HosgeldinizSWF.java programını kapsamaktadır.
    BasicWindowMonitor programını bundan sonraki programlarımızda sık sık
    kullanacağız.

    Program 1.3 BasicWindowMonitor.java
    programı



    import java.awt.event.*;
    import java.awt.Window;

    public class BasicWindowMonitor extends WindowAdapter
    {
    public **** windowClosing(WindowEvent e)
    {
    Window w=e.getWindow();
    w.setVisible(false);
    w.dispose();
    System.exit(0);
    }
    }


    Program 1.4
    HosgeldinizSWF.java programı



    import javax.swing.*;

    public class HosgeldinizSWF
    {
    public static **** main(String[] args)
    {
    JLabel etiket=new JLabel("Java Programına Hoş geldiniz!");
    JFrame cerceve=new JFrame("HosgeldinizSWF");
    cerceve.addWindowListener(new BasicWindowMonitor());
    cerceve.getContentPane().add(etiket);
    cerceve.pack();
    cerceve.setVisible(true);
    }
    }


    Burada iki ayrı program bulunmaktadır. Bu iki
    programlık seti çalıştırmak için önce iki programı da derlemek gerekir.

    javac BasicWindowMonitor.java
    javac HosgeldinizSWF.java

    sonra ikinci prgramı
    java HosgeldinizSWF

    komutunu kullanarak çalıştırabiliriz. Burada birinci programın görevi
    hosgeldinizSWF penceresini köşedeki X işaretine basdığımızda pencereyi
    kapatmaktır. Bu programı bundan sonraki birçok uygulamamızda
    kullanacağız. Programımız JFrame denilen grafik pencere ortamında
    yazılmıştır. Çıktı penceresi :

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01002
    Şekil 1.2 HosgeldinizSWF dosyasının konsol SWING JFrame pop-up grafik
    çıktısı kullanarak görülmesi

    Görüldüğü gibi burada yazma işlemini yaptırmak için tek bir komut yerine
    bir komutlar ve metotlar zinciri kullanıldı. Bu program swing grafik
    kütüphanesiyle grafik formatında çıktı almanın çok daha standart bir
    yoludur. Temel olarak SWING grafik penceresine JLabel sınıf tipi etiket
    eklenerek yazı grafik ekrana aktarılmıştır.

    Program 1.5 de yine swing metodu kullanılmıştır. Buradaki küçük
    farklılık bir önceki HosgeldinizSWF programında kullanılan Jlabel
    nesnesi üzerinden yazdırma yerine paint metodunun kullanılmış olmasıdır.
    Burada da BasicWindowMonitor programı kullanılmıştır. fakat bu programı
    daha önce derlemiş olduğumuzdan tekrar derlememiz gerekmez. Sadece

    javac Hosgeldiniz1SWF.java
    komutuyla bu programı derlememiz ve
    java Hosgeldiniz1SWF
    komutuyla çalıştırmamız kafidir.

    Program 1.5 Hosgeldiniz1SWF.java
    programı


    import
    javax.swing.*;
    import java.awt.*;

    public class Hosgeldiniz1SWF extends Jframe
    {
    public **** paint(Graphics g)
    {
    g.drawString("Java sınıfına hoşgeldiniz!",10,40);
    }

    public static **** main(String[] args)
    {
    Hosgeldiniz1SWF cerceve=new Hosgeldiniz1SWF();
    cerceve.addWindowListener(new BasicWindowMonitor());
    cerceve.setSize(160,50);
    cerceve.setVisible(true);
    }
    }


    Program çıktısı:
    1.2 Java Programini Yazma Ve ÇaliŞtirma 01003
    Şekil 1.3 Hosgeldiniz1SWF.java dosyasının konsol SWING pop-up grafik
    çıktısı kullanarak görülmesi

    Burada yazıyı temel olarak bir grafik metodu olan

    g.drawString("Java sinifina
    hosgeldiniz!",10,40);


    metodunu kullanarak pencere ortamına aktardık. bu metodda kullanılan
    10,40 deyimi yazının grafik ortamındaki x ve y koordinatlarını
    göstermektedir. y koordinatı yukardan aşağı doğru tanımlanmıştır.

    cerceve.setSize(160,50);

    deyimi açılan pencerenin boyutunun 160 genişliğinde ve 50 yüksekliğinde
    olacağını belirtmektedir.

    cerceve.setVisible(true);

    terimi ise pencerenin görünmesini (çizilmesini) sağlamaktadır.

    Buraya kadar kullandığımız programlar konsol programlarıydı. Bu
    programlarda da gördüğünüz gibi grafik ortamını yoğun olarak
    kullanabiliyoruz. Yalnız programların çalıştırılması konsoldan verilen
    java isim komutuyla gerçekleştirilmektedir.

    Şimdi de applet grafik ortamında çıktı almaya örnek verelim. İlk applet
    programımız HosgeldinizApplet.java listesi Program 1.6 da verilmiştir

    Program 1.6 HosgeldinizApplet.java
    programı


    import
    java.applet.Applet;
    import java.awt.*;
    public class HosgeldinizApplet extends Applet
    {
    public **** paint(Graphics g)
    {
    g.drawString("Java sınıfına hoş geldiniz!",25,35);
    }
    }

    bu programı çalıştırmak için önce HosgeldinizApplet.html HTML dili
    programını yazmamız gerekir

    Program 1.7 HosgeldinizApplet.html
    HTML kodu









    bu html kodunda

    code="HosgeldinizApplet.class" width=200 height=50 >

    komutu html'e compile edilmiş olan HosgeldinizApplet.class dosyasının
    gösterilmesini istemektedir. Şüphesiz aynı komut çok daha kompleks bir
    html dosyasının içinde de aynı görevi görmek amacıyla kullanılabilirdi.
    Programı çalıştırmak için

    javac HosgeldinizApplet.java
    appletviewer HosgeldinizApplet.html

    komutlarını konsolda vermemiz yeterlidir. Elbette HosgeldinizApplet.html
    dosyasının yukarıda belirtildiği gibi hazırlanmış olması da gerekir.
    Fakat Konsol programlarından farklı olarak sonucu konsol yerine Applette
    (browser programında) görürüz. Aynı sonucu appletviewer deyimini
    kullanmadan herhangi bir browser programı çağırarak da elde edebiliriz.
    Browser programında sonucu görebilmek için önce programı açmamız sonra
    da HosgeldinizApplet.html dosyasını bularak açmamız gerekir. Çıktı
    görüntüsü aşağıdaki gibi olacaktır.

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01004
    Şekil 1.4 HosgeldinizApplet.html dosyasının appletviewer programı
    kullanarak görülmesi

    Bu programında temel olarak bazı farklılıklar dışında bir önceki
    programlara benzediğini gözlemleyebiliriz. Bu programın temel farkı
    internet ortamından herhangi bir bilgisayardan da (gerekli ayarlama ve
    kopyelemelerden sonra) görülebilir olmasıdır.


    import java.applet.Applet;
    import java.awt.*;


    deyimleri java kütüphanesindeki Applet ve
    pencere(awt) sınıf grafik programlarını programımıza aktarır.

    public class HosgeldinizApplet
    extends Applet
    deyimi HosgeldinizApplet isimli sınıfı
    (class) yaratır. Bu sınıf tüm Applet sınıfının bir devamı olarak
    tanımlanmaktadır ( extends Applet ) diğer bir deyimle Applet sınıfının
    bütün metotları extends deyimiyle HosgeldinizApplet sınıfımızın içine
    kopyalanmıştır.

    public **** paint(Graphics g)
    deyimi appletin grafik olarak çizilmesini sağlar. Bu Metot Graphics sınıfı g nesnesini girdi olarak
    kullanır. Metotun çıktısı yoktur.

    g.drawString( "Java sinifina hos
    geldiniz!",25,35);
    Bu terim Appletin x = 25, y=35
    noktasına Java sinifina hos geldiniz! Yazısını çizer. DrawString Grafik
    sınıfı g nesnesine ait bir metotdur.

    Bu programda temel grafik kütüphanesi olarak abstract window toolkit
    (awt) kullanılmıştır. ayrıca konsol programlarından farklı olarak bu
    programda main metodunun kullanılmadığına da dikkat ediniz. bir program
    hem applet hem de konsol olarak da oluşturulabilir, yani hem main metodu
    olabilir hem de applet (html) ortamında çalışabilir.

    Aynı appleti oldukça benzer bir şekilde SWING kütüphanesini kullanarak
    da oluşturabilirdik.

    Program 1.8 HosgeldinizSWA.java
    programı




    import javax.swing.Japplet;
    import java.awt.Graphics;

    public class HosgeldinizSWA extends JApplet
    {
    public **** paint(Graphics g)
    {
    g.drawString("Java sınıfına Hoşgeldiniz",25,25);
    }
    }


    1.2 Java Programini Yazma Ve ÇaliŞtirma 01005
    Şekil 1.5 HosgeldinizSWA.java dosyasının applet SWING pop-up grafik
    çıktısı kullanarak görülmesi

    Bu programdaki
    import
    javax.swing.Japplet;
    import java.awt.Graphics;


    deyimleri java swing kütüphanesindeki JApplet ve pencere(awt)
    sınıfındaki Graphics alt programlarını (sınıflarını) programımıza
    aktarır.

    public class HosgeldinizSWA extends
    JApplet


    deyimi HosgeldinizAppletSWA isimli sınıfı (class) yaratır. Bu sınıf
    swing sınıfındaki JApplet sınıfının bir devamı olarak tanımlanmaktadır (
    extends JApplet). Diğer bir deyimle JApplet sınıfının bütün metotları
    extends deyimiyle HosgeldinizAppletSWA sınıfımızın içine kopyalanmıştır.

    Aynı işi yapmak için bir çok değişik program yazdık. Bazılarımız buna ne
    gerek vardı, tek bir şekilde bu işi halledemezmi idik diyebilirler.
    Haklıdırlarda. Fakat modern bilgisayar dillerinde kullanıcıları da göz
    önüne almak durumundayız. Aynı işi daha renkli ve çeşitli şekillerde
    yapmamız temel olarak program kullanıcılarına daha çeşitli alternatifler
    sunabilir. Aynı zamanda diğer programlama alternatiflerine göre daha
    üstün bir çalışma ortamı yaratabilir.

    Şimdi de programımıza bir basamak daha ekleyelim ve program
    kullanıcılara isimlerini sorsun, yani ekrandan bir veri girelim. Bunu
    yapmak için ilk tanımlayacağımız program konsol ortamında çalışan
    Hosgeldiniz2.java programı olacaktır. Bu programın çıktısı dos konsol
    ortamında şekil 1.6 da görülmektedir. Program ekranda isminizi giriniz
    yazacak, ve ekranda isim girildikten sonra

    java sınıfına hosgeldiniz! isim

    çıktısını verecektir.

    Program 1.9 Hosgeldiniz2.java
    programı



    import java.io.*;

    class Hosgeldiniz2 {
    public static **** main (String args[]) throws IOException
    {
    BufferedReader cin=new BufferedReader(new InputStreamReader(System.in));
    System.out.println("isminizi giriniz : ");
    String isim=new String(cin.readLine());
    System.out.println("Java Sinifina Hos Geldiniz! "+isim);
    cin.close();
    }
    }


    =============================

    C:cojavaprog>java Hosgeldiniz2

    isminizi giriniz :

    Turhan

    Java Sinifina Hos Geldiniz! Turhan

    C:cojavaprog>

    =============================

    Şekil 1.6 Hosgeldiniz2.java dosyasının sonuçlarının dos çıktısı
    kullanarak görülmesi

    Bu programda okuma işlemini yapmakiçin önce
    BufferedReader cin=new BufferedReader(new InputStreamReader(System.in));
    Deyimini kullanarak bir okuma kanalı açtık, sonra

    System.out.println("isminizi giriniz : ");
    String isim=new String(cin.readLine());

    Deyimindeki cin.readLine()
    komutuyla ismi cin kanalından okuyarak isim değişkenine aktardık.

    Aynı işlemi yapan fakat girdi çıktı sınıf tanımlarında Ek 1 de verilen
    Text sınıfını kullanan Hosgeldiniz3.java programı şekil 1.10 da
    verilmiştir.

    Program 1.10 Hosgeldiniz3.java
    programı


    import java.io.*;
    import Text;

    class Hosgeldiniz3 {
    public static **** main (String args[]) throws IOException
    {
    Text cin=new Text();
    System.out.print("isminizi giriniz : ");
    String isim=cin.readString();
    System.out.println("Java Sinifina Hos Geldiniz! "+isim);
    }
    }


    Hosgeldiniz2.java programının çıktısı da
    Hosgeldiniz2.java programıyla aynı olacaktır.

    Şimdi de swing kütüphanesindeki JoptionPane.showInputDialog() kullanarak
    girdi penceresi açan ve çıktı penceresine
    JoptionPane.showMessageDialog() kullanarak mesajı yazan
    Hosgeldiniz1SW.java programını göreceğiz.

    Program 1.11 Hosgeldiniz1SW.java
    programı



    import javax.swing.JoptionPane;
    class Hosgeldiniz1SW {
    public static **** main (String args[])
    {
    String isim=JoptionPane.showInputDialog("Lutfen isminizi giriniz :");
    JoptionPane.showMessageDialog(null,"Java Sinifina Hos Geldiniz!
    "+isim,"Hosgeldiniz1SW programi",JOptionPane.INFORMATION_MESSAGE);
    System.exit(0);
    }
    }


    Bu programı çalıştırmak içinde



    javac Hosgeldiniz1SW.java

    komutuyla bu programı derlememiz ve

    java Hosgeldiniz1SW

    komutuyla çalıştırmamız gerekecektir. Program girdi ve çıktı pencereleri
    şekil 1.7 ve Şekil 1.8 de verilmiştir.

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01006
    Şekil 1.7 Hosgeldiniz1SW.java dosyasının pencere popup girdi penceresi

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01007
    Şekil 1.8 Hosgeldiniz1SW.java dosyasının pencere popup çıktı penceresi

    Şimdi aynı girdi ve çıktı programlamasını JApplet sınıfını kullanarak
    yapalım. Input (girdi) için yine JoptionPane sınıfından yararlanacağız.

    Program 1.12 Hosgeldiniz1SWA.java
    programı



    import javax.swing.*;
    import java.awt.Graphics;

    public class Hosgeldiniz1SWA extends JApplet
    {
    String isim;
    public **** init()
    {
    isim=JoptionPane.showInputDialog("isminizi giriniz : ");
    }

    public **** paint(Graphics g)
    {
    g.drawString("Java sinifina Hosgeldiniz "+isim,25,25);
    }
    }


    Bu programı çalıştırmak için compile prosesinde
    yine
    javac Hosgeldiniz1SWA.java komutunu kullanacağız. sonra
    Hosgeldiniz1SWA.html dosyasını oluşturacağız.

    Program 1.13 Hosgeldiniz1SWA. html
    programı









    Hosgeldiniz1SWA.html dosyasını herhangi bir
    browser programında görebileceğimiz gibi javanın kendi basit browser
    programı appletviewer da da
    appletviewer Hosgeldiniz1SWA.html
    deyimiyle gösterebiliriz. Program girdi ve çıktısı :

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01008
    Şekil 1.9 Hosgeldiniz1SWA.java dosyasının applet popup girdi penceresi

    Program çıktısı appletviewer browserinda görüleceği şekliyle :

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01009
    Şekil 1.10 Hosgeldiniz1SWA.java dosyasının applet çıktı penceresi

    olacaktır. Son olarak girdi ve çıktı işlemlerini aynı pencerede
    yapıldığı biraz daha kompleks olan Hosgeldiniz5SWA.java programına göz
    atalım.

    Program 1.13 Hosgeldiniz5SWA.java
    programı



    import javax.swing.*; // java JApplet sınıfını
    çağır
    import java.awt.*; // java pencere kullanma sınıflarını (awt
    kütüphanesi) çağır
    import java.awt.event.*; // java pencereyi dinleme sınıflarını (awt
    kütüphanesi) çağır

    public class Hosgeldiniz5SWA extends JApplet implements ActionListener
    {
    //sınıf değişkenleri
    JTextArea ciktiAlani; //JTextArea sınıfı çıktı alanı değişkeni
    JLabel kutubasligi; //JLabel sınıfı değişkeni (nesnesi) kutubasligi
    JTextField kutugirdisi;//JTextfield sinifi degiskeni (nesnesi)
    kutugirdisi
    String isim;

    public **** init()
    {
    //girdi çıktı programlarının içine yazılacağı ana pencereyi tanımla
    Container c=getContentPane();
    c.setLayout(new FlowLayout());
    isim="Mürşide Gökağaç";
    kutubasligi=new JLabel("isminizi giriniz :");
    c.add(kutubasligi);//kutubasligini pencereye yaz
    kutugirdisi=new JTextField(10);
    c.add(kutugirdisi);//kutuyu pencereye yerlestir
    ciktiAlani=new JTextArea();
    Color co=c.getBackground();
    ciktiAlani.setBackground(co);
    c.add(ciktiAlani);
    ciktiAlani.setText("Java sınıfına Hoşgeldiniz ! "+ isim);

    // kutuya yeni ilave edilecek komutlari bekle
    // her yeni komutta actionPerformed metodunu calistir.

    kutugirdisi.addActionListener(this);
    }

    // girdi alanindaki olan olaylari dinleme metodu
    public **** actionPerformed(ActionEvent e)
    {
    //pencereden ismi oku
    isim=e.getActionCommand();
    ciktiAlani.setText("Java sınıfına hoşgeldiniz ! "+ isim);
    repaint();
    }
    }


    bu programı da yine
    javac Hosgeldiniz5SWA.java deyimiyle compile edip,
    appletviewer Hosgeldiniz5SWA.html komutuyla çalıştırırız.
    Hosgeldiniz5SWA.html dosyasının yukarıda anlatıldığı gibi hazırlanması
    gerekir. Program çıktısı şekil 1.11 de gösterilmiştir.

    1.2 Java Programini Yazma Ve ÇaliŞtirma 01010
    Şekil 1.11 Hosgeldiniz5SWA.java dosyasının applet çıktı penceresi

    Bu programda verilen komut detaylarını şu anda bilmek zorunda
    değilsiniz. Benzer işlemleri yapmak için aynı formattan
    yararlanabilirsiniz. İlerki bölümlerde grafik programlarının alt
    metodları detaylı olarak incelenecektir.

      Forum Saati Paz Mayıs 19, 2024 9:13 am