Paket Erişimleri

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

1

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

2

Paket (package)

• Paketler kütüphaneyi oluşturan elemanlardır.
• PaketKullanim.java

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

3

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

4

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

5

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

6

© 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

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 9

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

10

Ö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

11

Ö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

12

Ç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 13

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

14

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 15

Açıklama
JAR dosyası oluşturmak için JAR dosyasının içeriğini bakmak için JAR dosyasının içeliğini toptan dışarı çıkartmak için

Komut
jar -cf jar-dosya-ismi içeriyeatılacak-dosya(lar) jar -tf jar-dosya-ismi jar -xf jar-dosya-ismi

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

jar -xf jar-dosya-ismi arşivlenmiş dosya(lar) jre -cp jar-dosya-ismi MainClass
16

JAR olarak paketlenmiş uygulayı çalıştırmak için
© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

jar -cf kou.jar tr/

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

17

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

18

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

19

Erişim Belirleyiciler

• • • •

friendly public protected private

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

20

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 21

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

22

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

23

Ö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 24

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 25

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

26

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

27

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

28

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

29

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 30

Kalıtım (Inheritance)

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

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

31

Ö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

32

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

33

Sorular ...

© Altuğ B. Altıntaş 2003

Java ve Yazılım Tasarımı - Bölüm 4

34

Sign up to vote on this title
UsefulNot useful