Merhabalar bu yazı dizisiyle Java Sertifkasyon sınavlarına hazırlanırken kullandığım SCJP kitabından aldığım notlarımı paylaşacağım inşallah. Keyifli okumalar.
Kitabın görünümü bu şekilde. Dilerseniz internet üzerinde birçok siteden bulup indirebilirsiniz. (Burada yayın haklarını ihlal yok 🙂 Benim gibi Java kitaplığı oluşturmaya karar verdiğiniz gün buradan satın alabilirsiniz 🙂 )
Öncelikle Kitap Java 6 Sertifikasyon sınavlarına hazırlananlar için adeta mihenk taşı niteliğinde bir kaynak. Şöyle ki ; Bu kitap size Javayı sıfırdan öğretmez. Ama var olan bilgilerinizi daha da detaylı öğrenmek Class yapısının Interface mantığnın nereden geldiğini daha iyi anlamak ve yazılan kodun daha zekice yazılmasını istiyorsanız Java Sertifikasyon Sınavı aşkına içerisinde tüm bu istediklerinizi barındırmakta.
Bölüm bölüm ilerleyceğiz. Ama sıkılmadan okunabilmesi açısından yazıları kısa kısa tutacağım. Böylece daha sonra ihtiyacınız olduğu bir konuyu kalabalık yazılarda kaybolmadan nokta atışı ile bulabileceksiniz. Kitaptan aldığım notlardan oluştuğu için de kitaplığınızda olmasa da Bookmark’larınızda yer etmesini istediğim bir yazı dizisi olacak inşallah 🙂
İlk Bölümden başlayalım o halde.
1-DECLERATIONS AND ACCESS CONTROL
Bu bölümde tanımlamalar ve erişim kısıtlayıcılarından bahsediyor olucaz. Tanımlamak, oluşturacağımız bir Class bir motot ya da bir değişkenin sahip olacağı durumlar ve bu durumlara bağlı olarak ortaya çıkan davranışlardır.
Yani, Java da bir Class tanımlayabilmeniz için Class tanımlayıcısını, bir metot tanımlamak içinse Void,String,Integer gibi diğer tanımlayıcıları kullanmak zorundasınız.
Class : Objelerin davranışlarını ve durumlarını belirten şablon ya da temalardır. İçlerinde değişkenler metotlar ve objeler oluşturulabilir, kullanılabilir, örnekleyebilir, başka class’a ait nesneler çağırabilirsiniz. Bu aslında temel olarak bildiğimiz
public class blablabla{}
tanımlasının basit bir açıklamasıdır.
Object- Nesne Java Virtual Machine (JVM) de çalışma zamanında new kelimesi ile oluşturulan bellekte adına bir daire tahsis edilmiş ev sahibinin Almanyadan gelecek oğlu gibi bişey. Oluştruduğu anda uygun bulunduğu Class içerisinde örneklenir. Örneğin;
BirGaripClass nesnemiz=new BirGaripClass();
Bu kısımda BirGaripClass Classından nesnemizi oluşturduk. Oluştururken örneklemesini BirGaripClass’tan aldı. Ve Yapıcı metodu ise yine BirGaripClass içerisinde bulunan Default Constructer ile aldı. Yani BirGaripClass tan yeni bir nesne oluşturup bu nesnenin kişisel özelliklerini (içerisindeki değişkenler olabilir mesela) bir Default Constructer (BirGaripClass(); default olur parametresiz olduğu için) almasını sağladık. Bir tık daha karmaşıklaştırmak isteseydik,
BirGaripClass nesnemiz=new BirGaripBambaşkaBirClass(4,6);
Şeklinde oluşturabilirdik. Bu ise bize BirGaripClass tan bir nesne oluşturduğumuzu fakat bu Classın Yapıcı metodunun(Constructer) önce BirGaripBambaşkaBirClass ın iki adet int parametre alan yapıcı metodundan çalıştığını söyleyebilirdik.
Durum: Bir nesnenin durumu anlamına gelir. State diye geçer aslında tek bahsettiği nesnenin sahip olduğu değişkenler ve davranışlarıdır.
Kısaca değişkenler, içersinde veri tuttuğumuz arkadaşlar. Burada değişkenlerin iki durumu var.
- Sınıf Değişkenleri (Class Variable)
- Durum Değişkenleri(ınstance Variable)
Sınıf değişkenleri sınıf parantezleri içerisinde oluşturulur ve sınıfın parantezi kapanana kadar değerlerini korurlar. Sınıf içi herhangi bir nesneden ya da metottan erişilebilir. Hatta Final değil ise yeniden değer atanabilir(final olayı ilerde özel olarak işlenecek).
public class BirGaripClass{
int degiskenimiz=5;
System.out.Println(degiskenimiz);
.... }
Değimizde bize sonuç olarak 5 dönecek.
Durum Değişkenleri nesne içerisinde nesneye özgü değişkenlerdir. Sınıf içerisinde tanımlanmış ama değer atanmamıştır. Nesne dışında kullanılamaz ve nesne nerde, bu arkadaş orada olur.
public class BirGaripClass{
int degiskenimiz=5;
BirGaripClass nesnemiz=BirGaripClass ();
nesnemiz.degiskenimiz=10;
System.out.Println("Sınıf Değişkenimiz ="+degiskenimiz);
System.out.Println("Durum Değişkenimiz ="+nesnemiz.degiskenimiz);
.... }
Dersek bu sefer bize Sınıf Değişkenimiz=5 Durum Değişkenimiz=10 dönecek.
Birde davranışlar bulunuyor. Bunlarda aslında metotları anlatır. Yani Class mantığının olduğu yerler. Sınıfımızda yapacağımız işi yüklediğimiz çalışkan abiler. Metotlar içerisinde Sınıf içerisindeki değişkenleri manipule edebilir, Onlara çalışmaları için iş yükleri yükleyip daha sonra Erişim kısıtlayıcıların el verdiği müddetçe yeniden kullanabiliriz.
İlk yazımı burada sonlandırıyorum. Esenlikle 🙂