Java programlama dilinde metotlar, belirli bir işi yapan ve ihtiyaç duyulduğunda tekrar tekrar kullanılabilen kod bloklarıdır. Metotlar sayesinde programlar daha düzenli, okunabilir ve bakımı kolay hale gelir. Aynı kodu defalarca yazmak yerine bir kez metot olarak tanımlayıp çağırmak, yazılım geliştirme sürecini önemli ölçüde kolaylaştırır.
Metot;
- Belirli bir görevi yerine getiren
- İsimlendirilmiş
- Çağrıldığında çalışan
- Parametre alabilen veya almayan
- Geriye değer döndürebilen veya döndürmeyen
kod bloklarıdır.
Genel metot tanımı aşağıdaki gibidir.
1 2 3 4 5 | erişimBelirleyici static geriDonusTipi metotAdi(parametreler) { // Metot gövdesi } |
Örnek:
1 2 3 4 5 | public static void selamVer() { System.out.println("Merhaba Java"); } |
Yukarıdaki örnekte oluşturulan metot çağrıldığında ekranda “Merhaba Java” yazılacaktır.
Metot Türleri
Geriye Değer Döndürmeyen (void) Metotlar
Bu metotlar yalnızca işlem yapar, sonuç döndürmez.
1 2 3 4 5 | public static void yazdir(String isim) { System.out.println("Hoş geldin " + isim); } |
Yukarıdaki örnekte kendisine gönderilen string parametreyi alarak ekranda “Hoş geldin …(ifade)…..” yazdırılacaktır.
Geriye Değer Döndüren Metotlar
Bu metotlar return anahtar kelimesi ile bir değer döndürür.
Örnek 1:
1 2 3 4 5 | public static int topla(int a, int b) { return a + b; } |
Yukarıdaki metot kendine gönderilen 2 sayıyı toplayarak geriye sonucu döndürmektedir.
Örnek 2:
1 2 3 4 5 | public static double ortalama(double vize, double fin) { return (vize * 0.4) + (fin * 0.6); } |
Yukarıdaki metot vize ve final notunu parametre olarak alarak ortalamayı geri döndürmektedir.
Örnek 3:
Boolean Döndüren Metotlar
Genellikle koşul kontrolü için kullanılır.
1 2 3 4 5 | public static boolean tekMi(int sayi) { return sayi % 2 != 0; } |
Metot Çağırma
Tanımlanan bir metot, main metodu içinden çağrılarak çalıştırılır.
1 2 3 4 5 6 7 | public static void main(String[] args) { selamVer(); int sonuc = topla(5, 7); System.out.println(sonuc); } |
Metot Overloading (Aşırı Yükleme)
Aynı isimde fakat farklı parametre sayısı veya türüne sahip metotların tanımlanmasına metot overloading denir.
1 2 3 4 5 6 7 8 9 | public static int carp(int a, int b) { return a * b; } public static int carp(int a, int b, int c) { return a * b * c; } |
Metotlarda Dizi Kullanımı
Metotlara dizi gönderilebilir.
1 2 3 4 5 6 7 8 9 | public static int diziToplam(int[] sayilar) { int toplam = 0; for (int s : sayilar) { toplam += s; } return toplam; } |
Recursive (Özyinelemeli) Metotlar
Bir metodun kendi kendini çağırmasına recursive metot denir.
Faktöriyel Örneği:
1 2 3 4 5 6 7 8 | public static int faktoriyel(int n) { if (n == 1) return 1; else return n * faktoriyel(n - 1); } |
