instanceof isInstance isAssignableFrom 比较

instanceof  :  java 的关键字 判断一个 实例对象 是不是 可以赋值 给一个 class(  实例对象是不是 class 或者 subClass 的实现 ),表示的类和对象之间的关系。

		System.out.println( user instanceof User );
		System.out.println( user instanceof Object );
		System.out.println( new Object() instanceof User );

  结果:

true
true
false

  

 

 

 

isInstance:和上面一个一样 只是 一个是关键字 一个是方法,表示的类和对象之间的关系。

        System.out.println( User.class.isInstance( user )  );
        System.out.println( Object.class.isInstance( user )  );
        System.out.println( User.class.isInstance( new Object() )  );

结果:

true
true
false

 

 

 

 

isAssignableFrom:方法 ,这个和上面2 个不一样,上面两个是判断的 对象和 类之间的关系,这个是判断的类和类之间的关系。表示 一个类 的实例是否可以赋值给前面的 类

		System.out.println( User.class.isAssignableFrom( User.class )  );
		System.out.println( Object.class.isAssignableFrom( User.class )  );
		System.out.println( User.class.isAssignableFrom( Object.class )  );

  结果:

true
true
false

  

 

posted on 2018-08-14 10:49  zhangyukun  阅读(205)  评论(0编辑  收藏  举报

导航