楼主的意思没表达清楚
instanseof 是不能判定的,可以调用该方法来测试

解决方案 »

  1.   

    用:B.class.isAssignableFrom(A.class)
    JDK中的说明:
    public boolean isAssignableFrom(Class cls)
        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. It returns true if so; otherwise it returns false. If this Class object represents a primitive type, this method returns true if the specified Class parameter is exactly this Class object; otherwise it returns false. 
        Specifically, this method tests whether the type represented by the specified Class parameter can be converted to the type represented by this Class object via an identity conversion or via a widening reference conversion. See The Java Language Specification, sections 5.1.1 and 5.1.4 , for details.Parameters:
        cls - the Class object to be checked
    Returns:
        the boolean value indicating whether objects of the type cls can be assigned to objects of this class
    Throws:
        NullPointerException - if the specified Class parameter is null.
    Since: 
        JDK1.1 
      

  2.   

    调用这个方法??
    那岂不是没法动态判定了,比如我想在程序中实现这个动作如果对象实现了燃油这个接口,那我就调用这个对象和燃油相关的方法,如果实现了电动这个接口,那我就调用和电动接口相关的方法应该还是 cbhyk 的方法可行吧。可能我的问题没问清,但还是谢谢大家了:)
      

  3.   

    你可以在程序中调用这个方法啊if(燃油.class.isAssignableFrom(value)) {
    }