DEV Community

Mustafa  Çam
Mustafa Çam

Posted on

java instanceof

Java'da instanceof operatörü, belirli bir nesnenin belirtilen bir türün örneği olup olmadığını kontrol etmek için kullanılır. Bu operatör, nesne tabanlı programlamada tür güvenliğini sağlamak ve tür dönüşümlerini yönetmek için önemlidir¹.

instanceof Operatörünün Kullanımı:

instanceof operatörü, bir nesnenin belirli bir sınıfın ya da arayüzün örneği olup olmadığını test etmek için kullanılır. Eğer nesne, belirtilen türün bir örneği ise true, değilse false değerini döndürür. Ayrıca, null bir referans üzerinde kullanıldığında her zaman false döner².

Örnek olarak, bir Car sınıfımız olduğunu ve Opel sınıfının Car sınıfından türetildiğini varsayalım:

class Car {
    // Car sınıfı ile ilgili alanlar ve metotlar
}

class Opel extends Car {
    // Opel sınıfı ile ilgili ek alanlar ve metotlar
}

public class MainClass {
    public static void main(String[] args) {
        Car car = new Opel();
        System.out.println(car instanceof Car); // true döner
        System.out.println(car instanceof Opel); // true döner

        Car anotherCar = new Car();
        System.out.println(anotherCar instanceof Opel); // false döner
    }
}
Enter fullscreen mode Exit fullscreen mode

Bu örnekte, car nesnesi hem Car hem de Opel türünün bir örneğidir, çünkü Opel sınıfı Car sınıfından türetilmiştir. Ancak, anotherCar nesnesi sadece Car türünün bir örneğidir ve Opel türünün bir örneği değildir.

instanceof operatörü, özellikle tür dönüşümü yapmadan önce bir nesnenin türünü kontrol etmek istediğimizde kullanışlıdır. Bu sayede, yanlış tür dönüşümü yaparak oluşabilecek hataları önleyebiliriz³.

Kaynak: Bing ile konuşma, 17.05.2024
(1) Java'da Instanceof ve Inheritance - codegym.cc. https://codegym.cc/tr/groups/posts/tr.31.javada-instanceof-ve-inheritance.
(2) Java instanceof kullanımı | The Coders. https://okanuzun.pages.dev/java-instanceof-kullanimi/.
(3) Java'da Instanceof Operatörünün Kullanımı Nedir? - Code With C. https://bing.com/search?q=java+instanceof+nedir.
(4) Java instanceof Operator | Baeldung. https://www.baeldung.com/java-instanceof.

Top comments (0)