isAssignableFrom

xiaoxiao2021-02-28  81

    今天在项目源代码中看到有这么个方法

                @SuppressWarnings("unchecked")     private Class<ServerRpc> getServerRpcInterface(Class<?> implementationClass) {         Class<ServerRpc> serverRpcClass = null;         if (implementationClass != null) {             for (Class<?> candidateInterface : implementationClass                     .getInterfaces()) {                 if (ServerRpc.class.isAssignableFrom(candidateInterface)) {                     if (serverRpcClass != null) {                         throw new RuntimeException(                                 "Use registerRpc(T implementation, Class<T> rpcInterfaceType) if the Rpc implementation implements more than one interface");                     }                     serverRpcClass = (Class<ServerRpc>) candidateInterface;                 }             }         }         return serverRpcClass;     }

去查了差,原来是Object中的方法 意思是c1.isAssignableFrom(c2) 类c1 与类c2是否相同或者,c1是c2的父类或接口。

同时想到另一个问题,instanceof     它的用法是判断一个对象是否是这个类或接口,或子类,子接口的实例。嗯就酱...

转载请注明原文地址: https://www.6miu.com/read-34928.html

最新回复(0)