34
© Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 1 Paket Erişimleri

Paket Erişimleri · 2011. 6. 25. · © Altuğ B. Altıntaş2003 Java ve Yazılım Tasarımı - Bölüm 4 3 Paket (package)• Paketler kütüphaneyi oluşturan elemanlardır. •

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 1

    Paket Erişimleri

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 2

    Erişim

    • Erişim konusunda iki taraf vardır:– Kütüphaneyi kullanan kişiler (client)– Kütüphaneyi yazan kişiler

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 3

    Paket (package)

    • Paketler kütüphaneyi oluşturanelemanlardır.

    • PaketKullanim.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 4

    Varsayılan Paket (Default Package)

    • Test1.java

    • Test3.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 5

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 6

    Paket Oluşturma

    • Alan Adı Sistemi (Domain Name System)

    • tr/edu/kou/util/Test1.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 7

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 8

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 9

    CLASSPATH Ayarları

    C:\kodlar\bolum4\tr\edu\kou\math\

    import tr.edu.kou.math.*;

    CLASSPATH="C:\kodlar\bolum4\;."

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 10

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 11

    Örnek

    • tr/edu/kou/math/DortIslem.java

    • Aşağıdaki örnek işletim sisteminin herhangi bir yerine yerleştirilebilir.

    • Hesaplama.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 12

    Önemli nokta

    • Varsayılan paketlerin birbirini görmesi için:

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 13

    Çakışma

    • tr/edu/kou/util/ArrayList.java

    • Cakisma.java

    • Çakışmayı önlemek için

    • Cakisma2.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 14

    Paket içerisindeki uygulamaları çalıştırmak

    • tr/edu/kou/math/Hesaplama.java

    • Çalıştırma İşlemleri– java Hesaplama– java tr.edu.kou.math.Hesaplama

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 15

    JAR Dosyaları (The JavaTM Archive File)

    • Güvenlik• Sıkıştırma• İndirme (download) zamanını azaltması• Paket mühürleme(versiyon 1.2)

    – Versiyon uyumluluğu açısından

    • Paket versiyonlanma (versiyon1.2)– Versiyon bilgilerinin gösterimi

    • Taşınabilirlik

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 16

    jre -cp jar-dosya-ismiMainClass

    JAR olarak paketlenmiş uygulayıçalıştırmak için

    jar -xf jar-dosya-ismiarşivlenmiş dosya(lar)

    Belli bir dosyayı JAR dosyasındandışarı çıkartmak için

    jar -xf jar-dosya-ismiJAR dosyasının içeliğini toptan dışarı çıkartmak için

    jar -tf jar-dosya-ismiJAR dosyasının içeriğini bakmak için

    jar -cf jar-dosya-ismi içeriye-atılacak-dosya(lar)

    JAR dosyası oluşturmak için

    KomutAçıklama

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 17

    jar -cf kou.jar tr/

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 18

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 19

    CLASSPATH AYARLARI

    CLASSPATH="C:\kodlar\bolum4\;."

    Yukarıdaki ifade yerine artık aşağıdaki ifadeyi kullanabiliriz.

    CLASSPATH="C:\muzik\kou.jar;."

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 20

    Erişim Belirleyiciler

    • friendly• public• protected• private

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 21

    Erişim Belirleyiciler

    • Erişim belirleyiciler tüm global alanlar ve yordamlar için kullanılabilir.

    • Global Alanlar– Statik veya değil

    • Yordamlar (methods)– Statik veya değil

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 22

    Friendly

    • Aynı paket içerisinde erişilebilmeyi sağlar.– Sınıflar– Global alanlar– Yordamlar (methods)

    friendly erişim belirleyicisine sahip olabilirler.

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 23

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 24

    Örnek

    • tr/edu/kou/gerekli/Robot.java

    • tr/edu/kou/gerekli/Profesor.java

    • Başka bir paket

    • tr/edu/kou/util/Asistan.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 25

    Varsayılan Paketlerde (Default Package ) Erişim

    class AltKomsu {public static void main(String[] args) {UstKomsu uk = new UstKomsu();uk.merhaba();

    }}

    class UstKomsu {void merhaba() {

    System.out.println("Merhaba");}

    }

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 26

    public

    • Heryerden erişilebilmeyi sağlar.– Sınıflar– Global alanlar– Yordamlar (methods)

    public erişim belirleyicisine sahip olabilirler• tr/edu/kou/util/Makine.java

    • Makine sınıfını kullanan UstaBasi.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 27

    private (Özel)

    • private erişim belirleyicisine sahip olan – Global değişkenler– Yordamlar (methods)dışarıdan erişilemezler.

    • Sınıflar private olamazlar...

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 28

    private -2

    • Aynı paket içersindeki iki sınıf

    • tr/edu/kou/gerekli/Kahve.java

    • tr/edu/kou/gerekli/Musteri.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 29

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 30

    protected

    • protected erişim belirleyicisine sahip olan – Global alanlar– Yordamlar (methods)

    • Erişim ancak bu sınıftan türeyen sınıflar ve aynı paket içerisindeki sınıflar tarafından erişilebilir.

    • Sınıflar protected olamaz.

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 31

    Kalıtım (Inheritance)

    class Kedi extends Hayvan {..........

    }

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 32

    Örnek

    • tr/edu/kou/util/Hayvan.java

    • tr/edu/kou/gerekli/Kedi.java

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 33

  • © Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 4 34

    Sorular ...

    Paket EriþimleriEriþimPaket (package)Varsayýlan Paket (Default Package)Paket OluþturmaCLASSPATH AyarlarýÖrnekÖnemli noktaÇakýþmaPaket içerisindeki uygulamalarý çalýþtýrmakJAR Dosyalarý (The JavaTM Archive File)jar -cf kou.jar tr/CLASSPATH AYARLARIEriþim BelirleyicilerEriþim BelirleyicilerFriendlyÖrnekVarsayýlan Paketlerde (Default Package ) Eriþimpublicprivate (Özel)private -2protectedKalýtým (Inheritance)Örnek