Method References

RMAG news

Java’da method references (metod referansları), Java 8 ile gelen ve lambda ifadelerinin daha okunabilir ve kısa hale getirilmesini sağlayan bir özelliktir. Metod referansları, belirli bir metodun doğrudan adını kullanarak, o metodu bir lambda ifadesi yerine geçirebilir. Bu, özellikle tekrar tekrar kullanılan metodlar için kod tekrarını azaltır ve kodun okunabilirliğini artırır.

Metod referansları dört ana türde olabilir:

Statik Metod Referansları:

Sınıfın statik metodlarına direkt sınıf adı üzerinden erişim sağlar.
Örnek: ClassName::staticMethodName

Belirli Bir Nesnenin İnstance Metod Referansları:

Belirli bir nesnenin instance metodlarına o nesnenin referansı üzerinden erişim sağlar.
Örnek: instance::instanceMethodName

Belirli Bir Tipin Herhangi Bir Nesnesinin İnstance Metod Referansları:

Belirli bir tipin herhangi bir nesnesinin instance metodlarına direkt tip adı üzerinden erişim sağlar.
Örnek: ClassName::instanceMethodName

Yapıcı Metod Referansları (Constructor References):

Bir sınıfın yapıcı metoduna (constructor) direkt sınıf adı üzerinden erişim sağlar.
Örnek: ClassName::new

Metod referansları, :: operatörü kullanılarak ifade edilir. Örneğin, bir listenin her elemanını büyük harfe çeviren bir metodunuz varsa ve bu işlemi bir stream üzerinde yapmak istiyorsanız, şu şekilde bir lambda ifadesi yazabilirsiniz:

list.forEach(s -> System.out.println(s.toUpperCase()));

Aynı işlemi metod referansı kullanarak daha kısa ve okunabilir bir şekilde yapabilirsiniz:

list.forEach(System.out::println);

Bu örnekte, System.out nesnesinin println metoduna bir referans verilmiş ve lambda ifadesi yerine geçmiştir.

Metod referansları, fonksiyonel arayüzlerle (functional interfaces) birlikte kullanıldığında, kodun daha temiz ve anlaşılır olmasını sağlar. Ayrıca, Java’nın işlevsel programlama özelliklerini daha etkin kullanmanıza olanak tanır¹²³.

Kaynaklar:

Java 8 – Method Reference – KodEdu
Method References in Java | Baeldung
Java 8 Method Reference – javatpoint

Kaynak: Bing ile konuşma, 17.05.2024
(1) Java 8 – Method Reference – KodEdu. https://kodedu.com/2014/09/java-8-method-reference/.
(2) Method References in Java | Baeldung. https://www.baeldung.com/java-method-references.
(3) Java 8 Method Reference – javatpoint. https://www.javatpoint.com/java-8-method-reference.
(4) Java 8 – Method Reference – KodEdu. https://kodedu.com/2014/09/java-8-method-reference/.
(5) Method References in Java | Baeldung. https://www.baeldung.com/java-method-references.
(6) Java 8 Method Reference – javatpoint. https://www.javatpoint.com/java-8-method-reference.
(7) Method References | Java Tutorial for Beginners. https://java-tutorial.dev/docs/Functional-Programming-In-Java/Method-References.

Leave a Reply

Your email address will not be published. Required fields are marked *