说明:
本系列博客是本人在工作中遇到的一些问题的整理,其中有些资料来源网络博客,有些信息来自出版的书籍,掺杂一些个人的猜想及验证,总结,主要目的是方便知识的查看,并非纯原创。本系列博客会不断更新。原创不容易,支持原创。对于参考的一些其他博客,会尽量把博客地址列在博客的后面,以方便知识的查看。
?
instanceof、Class.instance()、Class.isAssignableFrom()三者的基本功能是一样的,都是用于判断一个对象或类是否是某种类型,不同的表述,不同的形式而已,在一些细节上可能有点差异。一般用于框架抽象,像接口、实现类比较丰富,或类继承层次比较多的场景。在传智播客黎活明老师讲解的《巴巴运动网》视频,对通用DAO抽象的时候使用到了isAssignableFrom,感兴趣的可以看下。
?
更多的讨论可以参看stackoverflow上的讨论:
http://stackoverflow.com/questions/496928/what-is-the-difference-between-instanceof-and-class-isassignablefrom