====== Τελεστής instanceof ======
Ο τελεστής ''instanceof'' επιστρέφει boolean true/false εάν ένα αντικείμενο ανήκει σε συγκεκριμένο τύπο δεδομένων. Με χρήση του τελεστή ''instanceof'' μπορούμε να εξετάσουμε εάν ένα αντικείμενο αποτελεί υλοποίηση μίας κλάσης ή υλοποιεί ένα συγκεκριμένο [[java:interface|interface]]. Δείτε το παρακάτω παράδειγμα.
public interface MyInterface {
}
public class Parent {
}
public class Child extends Parent implements MyInterface {
}
class InstanceofDemo {
public static void main(String[] args) {
Parent obj1 = new Parent();
Parent obj2 = new Child();
System.out.println("obj1 instanceof Parent: "
+ (obj1 instanceof Parent));
System.out.println("obj1 instanceof Child: "
+ (obj1 instanceof Child));
System.out.println("obj1 instanceof MyInterface: "
+ (obj1 instanceof MyInterface));
System.out.println("obj2 instanceof Parent: "
+ (obj2 instanceof Parent));
System.out.println("obj2 instanceof Child: "
+ (obj2 instanceof Child));
System.out.println("obj2 instanceof MyInterface: "
+ (obj2 instanceof MyInterface));
}
}
Το παραπάνω πρόγραμμα εκτυπώνει
obj1 instanceof Parent: true
obj1 instanceof Child: false
obj1 instanceof MyInterface: false
obj2 instanceof Parent: true
obj2 instanceof Child: true
obj2 instanceof MyInterface: true
|Προηγούμενο: [[ :java:abstract_classes_vs_interfaces | Συγκρίνοντας Abstract Κλάσεις και Interfaces ]] | [[:toc|Περιεχόμενα]] | Επόμενο: [[ :java:exceptions_intro | Exceptions ]]|