Java Constructor (Yapıcı) Metotlar
Java meraklısı yazılımcılara yeniden merhaba :)
Önceki makalemizde nesne yönelimli programlamaya sağlam giriş yapmış ve sınıf kavramını öğrenmiştik,bu makalemizde ise sınıfların constructor (yapıcı/kurucu) metot tekniğini öğreneceğiz.
Öncelikle yapıcı metotların ne olduğunu öğrenelim; yapıcı metotlar bir sınıfın kendi adıyla sınıfın içerisinde aynen yazılırlar ve sınıfın instance (örnek kopyası) alımı sırasında çalışırlar.
Constructor metotlar sayesinde o sınıfın kopyasına ait propertylerin (özellikler) değerlerini "new" sözcüğüyle oluşturulan yeni sınıf nesnesine dolaylı yoldan eklemek yerine tıpkı parametreli metotlarda olduğu gibi değerler nesnenin oluşum anında yazılır.Bu sayede uzun uzun tanımlamalara gerek kalmamaktadır.
Yapıcı metotlara örnek vermek adına şimdi NetBeans IDE'mizi çalıştırıyor ve "Kedi" adında bir sınıf oluştuyoruz:
Oluşturduğumuz bu sınıfa ait propertylerimizi yazıyor ve hatta örnek olsun diye metotlarımızı yazıyoruz:
Bu aşamada JFrame'e bir buton ekleyip click (actionperformed) eventine geçiyor ve oluşturduğumuz sınıfın
instance'ını alarak bir nesne üretiyoruz:
"new" sözcüğüyle aldığımız instance içerisine herhangi bir kod yazmadan uzun uzun propertyleri tanımladık.İşte bu noktada contrustor (yapıcı) metodumuz devreye giriyor ve "Kedi" classına geri dönerek yapıcı metot oluşturuyoruz:
Dikkat ederseniz yapıcı metodumuzun parametreleri ile sınıfın propertylerini eşleştirdik,bunun anlamı bu sınıftan instance alınırken parametre olarak verilen değerler aslında sınıfın propertylerine atanacak ve bu sayede yeniden tek tek property'lere değer vermekten kurtulacağız.
Butonumuzun click eventine geri dönelim ve sınıfımız için baştan instance alalım:
ve gördüğünüz gibi önceki instance'ımızdan farklı olarak kedimizin cinsini ve yaşını Kedi sınıfından aldığımız değişkene değil doğrudan instance içerisinde yazdık.
Yapıcı metotlarla ilgili bir başka bilmemiz gereken konu ise sınıflar için zorunluluk esasına göre esnek bir yapıda olmalarıdır,örneğin içerisinde salt kurucu metodu olan bir sınıf için ilk örnekteki gibi sınıf değişkenine tek tek property değerleri verilemez ancak sınıf içerisine yazılacak boş bir yapıcı metot sayesinde sınıfın property'lerine ister parametreli metotlar gibi değerler verir ya da tek tek elle değer verebiliyoruz.
Şimdi boş bir contructor metot oluşturalım:
Şimdi bu sınıfımızdan her iki şekilde instance alıyoruz:
Böylece ister parametreli ister klasik biçimde sınıfımızdan örnek kopya alalım her iki şekilde property'lerin değerlerini kolaylıkla tanımlayabiliyoruz.
Yapıcı metotlarla ilgili olarak dikkat etmemiz gereken en kritik 2 nokta vardır; birincisi kesinlikle ve kesinlikle içinde bulunduğu sınıfın adıyla aynı olmalılar, ikincisi ise void metota benzer bir yapıda oldukları için herhangi bir değer döndürmedikleri için "return" sözcüğü yer almamalılar.
Constructor metotlarla ilgili olarak bu kadar yüzeysel bilgi yeterlidir diye umuyorum,bir sonraki Java makalemizde
görüşmek üzere hoşçakalın :)
Önceki makalemizde nesne yönelimli programlamaya sağlam giriş yapmış ve sınıf kavramını öğrenmiştik,bu makalemizde ise sınıfların constructor (yapıcı/kurucu) metot tekniğini öğreneceğiz.
Öncelikle yapıcı metotların ne olduğunu öğrenelim; yapıcı metotlar bir sınıfın kendi adıyla sınıfın içerisinde aynen yazılırlar ve sınıfın instance (örnek kopyası) alımı sırasında çalışırlar.
Constructor metotlar sayesinde o sınıfın kopyasına ait propertylerin (özellikler) değerlerini "new" sözcüğüyle oluşturulan yeni sınıf nesnesine dolaylı yoldan eklemek yerine tıpkı parametreli metotlarda olduğu gibi değerler nesnenin oluşum anında yazılır.Bu sayede uzun uzun tanımlamalara gerek kalmamaktadır.
Yapıcı metotlara örnek vermek adına şimdi NetBeans IDE'mizi çalıştırıyor ve "Kedi" adında bir sınıf oluştuyoruz:
Oluşturduğumuz bu sınıfa ait propertylerimizi yazıyor ve hatta örnek olsun diye metotlarımızı yazıyoruz:
Bu aşamada JFrame'e bir buton ekleyip click (actionperformed) eventine geçiyor ve oluşturduğumuz sınıfın
instance'ını alarak bir nesne üretiyoruz:
"new" sözcüğüyle aldığımız instance içerisine herhangi bir kod yazmadan uzun uzun propertyleri tanımladık.İşte bu noktada contrustor (yapıcı) metodumuz devreye giriyor ve "Kedi" classına geri dönerek yapıcı metot oluşturuyoruz:
Dikkat ederseniz yapıcı metodumuzun parametreleri ile sınıfın propertylerini eşleştirdik,bunun anlamı bu sınıftan instance alınırken parametre olarak verilen değerler aslında sınıfın propertylerine atanacak ve bu sayede yeniden tek tek property'lere değer vermekten kurtulacağız.
Butonumuzun click eventine geri dönelim ve sınıfımız için baştan instance alalım:
ve gördüğünüz gibi önceki instance'ımızdan farklı olarak kedimizin cinsini ve yaşını Kedi sınıfından aldığımız değişkene değil doğrudan instance içerisinde yazdık.
Yapıcı metotlarla ilgili bir başka bilmemiz gereken konu ise sınıflar için zorunluluk esasına göre esnek bir yapıda olmalarıdır,örneğin içerisinde salt kurucu metodu olan bir sınıf için ilk örnekteki gibi sınıf değişkenine tek tek property değerleri verilemez ancak sınıf içerisine yazılacak boş bir yapıcı metot sayesinde sınıfın property'lerine ister parametreli metotlar gibi değerler verir ya da tek tek elle değer verebiliyoruz.
Şimdi boş bir contructor metot oluşturalım:
Şimdi bu sınıfımızdan her iki şekilde instance alıyoruz:
Böylece ister parametreli ister klasik biçimde sınıfımızdan örnek kopya alalım her iki şekilde property'lerin değerlerini kolaylıkla tanımlayabiliyoruz.
Yapıcı metotlarla ilgili olarak dikkat etmemiz gereken en kritik 2 nokta vardır; birincisi kesinlikle ve kesinlikle içinde bulunduğu sınıfın adıyla aynı olmalılar, ikincisi ise void metota benzer bir yapıda oldukları için herhangi bir değer döndürmedikleri için "return" sözcüğü yer almamalılar.
Constructor metotlarla ilgili olarak bu kadar yüzeysel bilgi yeterlidir diye umuyorum,bir sonraki Java makalemizde
görüşmek üzere hoşçakalın :)