如果你嘗試下面的一段代碼(我已經試過了在Java 6):奇怪的行爲:isAssignableFrom(類<?>)
System.out.println(Collection.class.isAssignableFrom(Set.class));
它打印出:false
但我期待打印出:true
因爲javadoc中是說:
Determines if the class or interface represented by this Class object is either the same as, or is a superclass or superinterface of, the class or interface represented by the specified Class parameter.
但收藏是集超類:public interface Set<E> extends Collection<E>
。
那麼這種奇怪行爲的解釋是什麼?
您正在導入錯誤的「集合」類型。它應該是'java.util.Collection'。或者也許Java 6搞砸了。它適用於7.或者下面的@ Marco13說。 –
或者錯誤的設置類型。它應該是'java.util.Set' :-) – Marco13
你是對的,進口今天是我的一天:) ... – Daniel