06.03.2015 Views

Java Kitabı

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

uhHaliniYansit(), tokatAt(), kucakla()‘nın hepsi birer nesne yordamlarıdır; yani, bu<br />

yordamları çağırmak için MutluAdam sınıfına ait bir nesne oluĢturmalıdır. ()<br />

MutluAdam tipindeki obj1 ve obj2 referanslarına MutluAdam nesnelerini bağladığı anda bu iki nesnenin<br />

ruh halleri aynıdır (ruh_hali = "Mutluyum"). Fakat zaman geçtikçe her nesnenin kendisine ait ruh hali<br />

değiĢmektedir. Bu değiĢimin sebebi çevre koĢulları olabilir. Örneğin obj1 referansına bağlı olan<br />

MutluAdam nesnesini kucaklandık, böylece mutlu olmaya devam etti ama obj2 referansına bağlı<br />

MutluAdam nesnesine tokat attığımızda, mutlu olan ruh hali değiĢti ve sinirli bir ruh haline sahip oldu. ()<br />

Nesne yordamları, nesnenin durumuna iliĢkin iĢlemleri yapmak için kullanılırlar ama statik yordamlar ilgili<br />

nesnenin durumuna iliĢkin genel bir iĢlem yapmazlar; ġöyle ki: ()<br />

Örnek-3.15: Toplama.java ()<br />

public class Toplama {<br />

}<br />

public static double topla(double a , double b ) {<br />

double sonuc = a + b ;<br />

return sonuc ;<br />

}<br />

Bu örneğimizde görüldüğü üzere topla() yordamının amacı sadece kendisine gelen iki double<br />

değerini toplamak ve sonucu geri döndürmektir. topla() yordamı Toplama sınıfına ait bu nesnenin<br />

durumu ile ilgili herhangi bir görev üstlenmediği için statik yordam (sınıf yordamı) olarak tanımlanması<br />

gayet mantıklıdır. Ayrıca topla() yordamını çağırmak için Toplama sınıfına ait bir nesne oluĢturmak da<br />

çok gereksiz durmaktadır. ġimdi Toplama sınıfı içerisindeki statik olan topla() yordamını kullanan bir<br />

uygulama yazalım. ()<br />

Örnek-3.16: ToplamaIslemi.java ()<br />

public class ToplamaIslemi {<br />

public static void main(String args[]) {<br />

if (args.length < 2) {<br />

System.out.println("Ltf iki adet sayi<br />

giriniz");<br />

System.exit(-1); // uygulama sonlanacaktır<br />

}<br />

double a = Double.parseDouble(args[0]);<br />

double b = Double.parseDouble(args[1]);<br />

}<br />

}<br />

double sonuc = Toplama.topla(a,b); // dikkat<br />

System.out.println("Sonuc : " + sonuc );<br />

ToplamaIslemi sınıfı, kullanıcıdan aldığı parametreleri öncelikle double tipine dönüĢtürmektedir. Daha<br />

sonra bu değerleri Toplama sınıfının topla() yordamına göndererek, toplatmaktadır. Dikkat edileceği<br />

üzere topla() yordamını çağırmak için Toplama sınıfına ait bir nesne oluĢturma zahmetinde<br />

bulunmadık. Yukarıdaki uygulamamızı aĢağıdaki gibi çalıĢtıracak olursak, ()<br />

> java ToplamaIslemi 5.5 9.2<br />

14.7<br />

61

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!