10 Object Orientation – 01 Encapsulation IS-A HAS-A

Merhaba Arkadaslar,
Bu yazimda Java da Encapsulation ,Inheritance , IS-A ve HAS-A kavramlarindan bahsedecegim.

Encapsulation
Encapsulation , sarmalama demektir, yani koruma demektir. Bu korumayi saglamak icin;

  • instance variable larimizi private olarak tanimlayalim.
  • public getter/setter metotlar ile ulasimi saglayalim.
  • getter/setter metotlar icin Java Standartlarinda isim kullanalim.

Bu uc maddeye dikkat edersek kodumuz esnek (flexibility) , bakimi kolay (maintainability) ve genislemeye acik (extensibiliyt) olacaktir.

Encapsulation olmayan durum;

class B {
	public int var1;
}

public class A {
	public static void main(String[] args) {
		B b = new B();
		b.var1 = -1;
	}
}

Continue reading 10 Object Orientation – 01 Encapsulation IS-A HAS-A

09 Java Tricks

Merhaba Arkadaslar,
Bu yazimda onceki 8 yazimin ozeti seklinde olacaktir. Akilda tutulmasi gereken trickleri maddeler halinde paylasacagim.

Identifier(Belirtec)

  • Javada belirtecler harf, underscore (_) ve $ isareti ile baslayabilir. Rakam ile baslayamaz.
  • Ilk karakterden sonra rakam da kullanilabilir.
  • Isimlendirmede uzunluk sinirlamasi yoktur.
  • Java da camelCase yapisina uygun olarak isimlendirme kullanilir.

Deklarasyon Kurallari

  • Bir kaynak dosya (source file) sadece bir tek public class icerebilir.
  • public class ile kaynak dosyanin adi ayni olmak zorundadir.
  • Bir sinif sadece tek bir package ifadesine sahip olabilir , bir den fazla import kullanilabilir.
  • Bir kaynak dosya bir den fazla public olmayan sinif icerebilir.

Class Access Modifiers ( Sinif Erisim Duzenleyicileri)

  • Java da 3 adet access modifier vardir ; public , protected, private
  • Java da 4 adet access level vardir. public, protected, private ve default
  • Siniflar public veya default access e sahip olabilir.
  • Default access e sahip sinifa ayni paket altindaki tum siniflardan erisim saglanabilir.
  • public sinifa diger paketlerde bulunan siniflardan da ulasim saglanabilir.

Class NonAccess Modifier

  • Siniflar sunlari da alabilir ; final , abstract , strictfp
  • Bir sinif final ve abstract olamaz. Bu iki anahtar kelime hic bir sekilde yan yana gelemez.
  • final sinif kalitilamaz
  • abstract siniftan obje olusturulamaz.
  • abstract sinif hem abstract hem normal (concrete) metota sahip olabilir.

Continue reading 09 Java Tricks

03 Interface Declaration

Merhaba Arkadaslar,
Bu dersimiz, Java ‘da Interface (arabirim) tanimlanmasi ile ilgili olacaktir.

Bir interface (arabirim) tanimladigimizda , metotlar govdesiz olarak tanimlanir. yani { } icermezler. Interface bir sablon, kontrattir yani bir interface i uygulayan sinif bu metotlari mutlaka uygulamak, (override) zorundadir.

abstract bir sinif , bir interface i uygulayabilir ve metotlarini uygulamak zorunda degildir, abstract olmayan bir sinif mutlaka metotlari uygulamak ,(override) , zorundadir.

Interface (arabirim) , herhangi bir sinif tarafindan uygulanabilir (implements) . Bu sayede kalitim hiyerarsisinde birbiriyle tamamen iliskisi olmayan siniflar dahi ayni arabirimi uygulayabilir. Bu Interface yapisinin en onemli ozelligidir.

Continue reading 03 Interface Declaration