Posted By:
Amir_Pashazadeh
Posted On:
Tuesday, August 8, 2006 01:41 PM
First difference:
instanceof is a reserved word of Java, but isInstance() is a method of java.lang.Class.
Other differences:
you could use instanceof on types (which are known on compile time), and isInstance() could only be called on an instance fo java.lang.Class.
if (obj instanceof MyType) {
...
}
if (MyType.class.isInstance(obj)) {
...
}
so you can have dynamism using
isInstane() like this:
Class x = Integer.class;
if (x.isInstance(obj)) {
...
}
x = String.class;
if (x.isInstance(obj)) {
...
}
as you see you could check the type of an object with an unknown class during compile time!