CodeBlanks Logo Icon CodeBlanks

getMethods

getMethods ile metot listesini öğrenirsin.

getMethods ile yöntemleri bulma

Class.getMethods(), sınıfın tüm public yöntemlerini döndürür; üst sınıflardan gelenleri de kapsar (örneğin Object'ten). Her yöntem bir Method nesnesidir.

Örnek: Method[] methods = String.class.getMethods(). Dönen dizide m.getName() yöntem adını, m.getReturnType() dönüş türünü, m.getParameterTypes() parametre türlerini verir. Yalnızca sınıfın kendi yöntemlerini istiyorsan getDeclaredMethods kullanırsın.

Method üzerinde bilgi

Bir Method nesnesi birçok bilgi taşır. getName adı, getReturnType dönüş türünü, getParameterTypes parametre türlerini verir.

Örnek: m.getName() ve m.getParameterCount(). Bu yöntemler, bir sınıfın arayüzünü çalışma anında keşfetmek için kullanılır. Bir çerçeve, hangi yöntemlerin hangi parametrelere sahip olduğunu öğrenip buna göre çağrı yapabilir; bu, annotation işleme ve bağımlılık enjeksiyonu gibi işlerde temel bir araçtır.

Uygulama String sınıfının length yöntemini bul

String.class.getMethod("length") ile length yöntemini bul. Yöntem adını getName() ile System.out.println ile yazdır. main imzasına throws NoSuchMethodException ekle.

Başlangıç kodu

Main.java
import java.lang.reflect.Method;

// String.class.getMethod ile length yöntemini bul
// getName ile adını al
// throws NoSuchMethodException ekle ve yazdır

Örnek çözüm

Main.java
public class StringMethods {
    public static void main(String[] args) throws NoSuchMethodException {
        Method m = String.class.getMethod("length");
        System.out.println(m.getName());
    }
}

Beklenen çıktı

length

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Hangi yöntem public yöntemleri üst sınıflardan gelenlerle döndürür?

  • getFields
  • getConstructors
  • getMethods Doğru cevap
  • getClasses

Açıklama: getMethods public yöntemleri verir.

2 getMethod ile tek yöntem bul

Soru
Method m = clazz.____("length");
Cevap
Method m = clazz.getMethod("length");

Açıklama: getMethod adıyla tek yöntem bulur.

3 Method yöntemlerini eşleştir

Kavram Anlamı
getMethods Public yöntemler
getName Yöntem adı
getReturnType Dönüş türü
getParameterTypes Parametre türleri

İleri seviye bölümündeki tüm dersler