Java'da Paketler Hakkında Her Şey

Jaime Lannister

Kıdemli Üye
1 Ara 2020
3,692
807
Casterly Rock
Merhaba değerli TURKHACKTEAM üyeleri, Java'da Paketleri anlatacağım keyifli okumalar.

qludCv.png

YHOrwJ.gif

qludCv.png


Temel ilke olarak Java, nesne tabanlı programlama, iletişim ağı ortamı ve çok yönlü sistemin gereksinimlerine karşılık verebilmek amacıyla tasarlandığı için, çok sayıda sınıf ve arabirimi bünyesinde taşımaktadır. Bu sınıf ve arabirimleri bu konuda bulabilirsiniz.

qTM4ah.jpg


Bir Java programı kaynak kütükleri farklı birkaç Java sınıfından oluşabilir. Sınıf bir objenin yapısını, bir diğer deyişle şekil ve hareketini ve yöntem olarak adlandırılan işlevselliğini tanımlar. Bir Java programı yazılıp çalıştırılmaya başlandıktan sonra sistem, sınıf tanımlarını kullanarak objeleri yani sınıf örneklerini hazırlar. Genel olarak bir sınıfın tanımı şöyledir:

Kod:
[COLOR="Orange"]class sınıfınadı extends üstsınıfınadı {
tür örnek-değişken:;
tür yöntem(parametre){
yöntem-gövde
}
}
[/COLOR]

Burada adı geçen extends anahtar sözcüğü, sınıfadı’nın üstsınıfınadı’nın alt sınıfı olduğunu göstermektedir.

bnJjJr.png


Bir sınıf kurucu ve yöntemlerle tanımlanabilir. Yöntemi bir sınıfın işlevsel arabirimi ve sınıf tanımlarına iliştirilmiş alt yordam olarak tanımlayabiliriz. Sınıf tanımları içerisinde kullanılan yöntemlerin genel şekli şöyledir:

Kod:
[COLOR="Orange"]tür yöntem(parametre ya da liste){
yöntem-gövde;
}[/COLOR]

Esasen kurucular da birer yöntemdir. Bir kurucu sınıfı ile aynı isme sahiptir. Obje hazırlandıktan sonra kurucu otomatik olarak çağrılır.

vIpl4s.jpg


z2x1XH.gif


1. java.lang Paketi
Java.lang paketi, Java dilinin ve Java Sanal Makinenin çekirdeğini oluşturan sınıf ve arabirimleri sunmaktadır. Örneğin Object, String ve Thread hemen her programda kullanılmaktadır. Dier java.lang sınıfları Java Sanal Makinede çıkabilecek olağan dışı durumları ve durumları tanımlamaktadır.

ClassLoader, Process, Runtime, SecurityManage ve System gibi sınıflar sistem kaynaklarına erişimi sağlamaktadır.

Java.lang paketi tüm JAVA programlarına otomatik olarak gönderilebilir. JAVA’nın en temel düzeyidir ve bu dilin çekirdeini oluşturan sınıf ve arabirimleri sunar.

Java.lang paketinde yer alan sınıf ve arabirimleri genel olarak şu şekilde sınıflandırabiliriz:

Temel sınıflar arasında yer alan Object, Class, String ve StringBuffer sınıfları hemen her program tarafından kullanılır.

Boollean, Charecter, Double Float, Integer, Long ve Nummer sınıfları kap (container) sınıflarıdır. Daha önceki türleri korumak için kullanılır.

ClassLoader, Math, Process, Runtime, SecurtyManager ve System sınıfları sistem fonksiyonlarına ve kaynaklarına erişmeyi sağlar.

lZ3Rjj.jpg


2. java.net Paketi
Java.net paketinde iletişim aşı çalışmalarını sağlayan sınıf ve arabirimler yer almaktadır. JAVA internet’in TCP / IP protokolünü hem önceden kurulmuş olan akış I / O arabirimini çıkararak hem de I / O objeler kurmak için gereken özellikleri ekleyerek desteklemektedir. Bunun yanı sıra bir URL ve URL bağlantısını gösteren sınıflar ile soket bağlantısını ve internet adresini gösteren sınıflarda bulunmaktadır.

Girdi / çıktı akışları ve internet adresleri bir başka sistemden alınabilir ya da gönderilebilir. Java.net paketi, bir uygulamanın bilgiyi iletişim ağına aktarmasını kolaylaştıran sınıf ve arabirimleri kapsamaktadır. TCP ve UDP’nin her ikisini desteklemektedir. Web’deki bir bilgiye Tekdüze Kaynak Yerleştiriciler kullanılarak kolayca erişilebilir.

Vmp4O6.jpg


3. java.util Paketi
Java.util paketi, destek sınıfları ve ilgili arabirimleri sunmaktadır. Dictionary, Hashtable, Stack, Vector gibi geniş kapsamı olan veri yapılarını, StringTokenizer gibi dizilim işletme ve Date gibi tarih ve takvim hizmet programlarını temin eden sınıfları kapsamaktadır.

Ayrıca bu pakette Observer arabirimi ile Observable sınıfı da yer almaktadır. Bu sınıf ve arabirim aracılığı ile objeler, değişikliğe uğradıklarını ve bir başka objeye rahatlıkla bildirebilmektedir. JAVA’nın destek paketi olup karmaşık veri yapıları ve bu
yapıların yöntemlerini kapsamaktadır. Genel olarak veri yapıları, denetim tabloları, yığınlara ve dizilere benzemektedir

uqhzmW.png


4. java.io Paketi
Kütüklere veya I/O kaynaklarına veri yazmaya ya da okumak için kullanılan girdi ve çıktı (I/O) akışlarının setini hazırlamaktadır.

JAVA akışları bayta yöneliktir. Burada tanımlanan sınıflar, daha karmaşık akış işlevselliğini gerçekleştirmek için zincirleme olarak kullanılabilir.

I/O (input/output) sözcüklerinden de anlaşılacağı gibi bu paket girdi ve çıktı işlevlerini kapsamaktadır. Tek düze akış modeli sağlayan Java.io paketi, verinin kütüklere yazılamasını ve okunmasını salar ve dier girdi ile çıktı kaynaklar için kullanılan girdi ve çıktı akış kümesini sunar.

Bir kütük sistemine ya da iletişim ağı veya bir girdi aygıtına başvurduğunuz zaman, gereksinim duyacağınız tek şey InputStream ve OutputStream objelerini kullanmak olacaktır.

Bu pakette sınıflar birkaç kategoriye ayrılmaktadır:

InputStream ve OutputStream sınıfları sistemdeki genel girdi/çıktı akışını gerçekleştirir. Girdi ve çıktının süzme işlemini gerçekleştiren FilteredInputStream ve FilteredOutputStream sınıfları girdi ve çıktı işlevselliğinin etkilenmesini de sağlamaktadır.

4ReeMg.jpg


5. java.awt Paketi
Java.awt paketi standart grafik kullanıcı arabirimi elemanlarını sunmaktadır. Bu elemanlar düme, liste, menü ve metin alanlarıdır. Ayrıca pencere ve menü çubukları gibi kaplar ile kütüklerin açılması ve saklanması için kullanılan diyalog pencereleri gibi yüksek düzey bileşenleri de içermektedir. AWT (Abstract Window Toolkit – Soyut Pencere Araçkiti) serisi içerisinde java.awt.image ve java.awt.peer olmak üzere iki paket daha yer almaktadır.

Soyut Pencere Araçkiti (AWT) JAVA’nın paketleri arasında en ağır olanı diyebiliriz. Bu sınıflar temel Machintosh 84, Windows 95, X/Motif 88 ve Xeror PARC 80 grafik kullanıcı arabirim bileşenlerini işletir.

Java.awt, standart grafik kullanıcı arabirimi (GUI) elemanlarının kolay kullanımını salayan bir pakettir. Bu paket hem temel bileşenleri hem de üst düzey arabirimleri içermektedir. Bunun yanı sıra uygulamalar kendi bileşenlerini de kurabilir. Bu pakette tüm menü, kaydırma çubukları, dümeler ve dier bileşenler yer almaktadır.

Ayrıca daha ayrıntılı resim işlemine ya da renk işlemine gereksinim duyan uygulamalar, java.awt.image paketi içinde yer alan sınıfları da kullanabilir. Bileşenlerin daha farklı görünmesini ve hareket etmesine gereksinimi olan uygulamalar ise, java.awt.peer paketinde bulunan tanımlı arabirimlerle birlikte Toolkit sınıfı kullanılabilir.

J2dAEr.jpg


6. java.awt.image Paketi

Java.awt.image paketinde karmaşık işlemlerini gerçekleştirmek için gerekli olan sınıf ve arabirimler yer almaktadır. Bu sınıflar ve arabirimler, resim ve renkler üzerinde düzenlemeler veya deiğişiklik yapmaya gereksinim duyan uygulamalar tarafından kullanılabilir.

Daha karmaşık resim işlemleri için kullanılan sınıf ve arabirimleri kapsamaktadır.

jCzDrv.jpg


7. java.awt.peer Paketi
Java.awt.peer paketi, AWT bileşenlerini pencere sistemine özel çalışmalara bağlamak için kullanılan arabirimleri kapsamaktadır. AWT’nin pencere sistemine özel çalışmalarını hazırlamazsanız, java.awt.peer paketindeki arabirimleri kullanmanız gerekir.

Bu pakette yer alan her bir arabirim java.awt paketinde uygun bir bileşene sahiptir.

LIlSaJ.jpg


8. java.applet Paketi
İnternet hizmetlerine ulaşabilen, net üzerinden veriyi nakledebilen, otomatik olarak kurulabilen ve bir web dokümanı gibi çalıştırılabilen küçük uygulamalara applet adı verilmektedir.

Bu küçük uygulamaları hazırlamak için java.applet paketindeki sınıf ve arabirimlerini kullanabiliriz.

qaAsQn.png


z2x1XH.gif


Umarım yardımcı olmuşumdur. İyi Forumlar.

z2x1XH.gif


zcIPpR.gif


Bu Konunun Kaynağı:
http://hilmi.trakya.edu.tr/ders_notl...AVA_Kitabi.pdf
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.