作者Schatze (吃哈吱)
看板java
标题Re: [问题] instanceof与Class.forName结果不同
时间Thu Mar 24 20:49:49 2011
※ 引述《Schatze (吃哈吱)》之铭言:
: 大家好
: 小弟实作了几个class, 其中有一个是com.test.A,
: 但在使用时遇到一种情况,
: if( class[i] instanceof com.test.A )
: 会出现错误讯息inconvertible types, 但是
: if( class[i].equal(Class.forName("com.test.A")) )
: 却得到true, 请问这是什麽情形呢?
: 在com.test.A这个class里该怎麽修改才能使
: class[i] instanceof com.test.A 是 return false
: 而不是出现inconvertible types这个错误讯息呢? 谢谢
因为推文一行要等60秒, 先详细解释一下~
这个com.test.A是一个interface,
class[]里是所有实作com.test.A的class.
但是里面有一个class会引起
if( class[i] instanceof com.test.A )
出现错误讯息 : inconvertible types
所以希望这个引起错误讯息的class能够
在if( class[i] instanceof com.test.A )里面
做判断时return false. 或是该怎麽在使用
上面的条件判断式时, 强制使用try..catch
小弟是java新手, 麻烦大家多指点~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.115.139.204