`
xly_971223
  • 浏览: 1277438 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Class1.isAssignableFrom(class2)

 
阅读更多
这个方法在如下情况下返回true
1.class1跟class2是同一类型 则返回true
2.class1是class2的超类或超接口 则返回true

如:Object.class.isAssignableFrom(String.class) Object是String的超类 所以返回true
String.class.isAssignableFrom(String.class) 返回true
分享到:
评论
1 楼 sam301 2013-03-04  
简单清晰明了。

相关推荐

    Java中isAssignableFrom的用法详解

    1. 如果 `class2` 是 `class1` 的子类或子接口,或者是 `class1` 的子类或子接口的子类/子接口,那么 `class1.isAssignableFrom(class2)` 返回 `true`。 2. 同时,如果 `class1` 表示的是一个基本类型(如 `int`、`...

    isAssignableFrom

    也就是说,如果A类是B类的父类(或者A接口是B接口的扩展),那么Class对象表示A的`isAssignableFrom`方法调用表示B的Class对象时会返回true。这是一个非常基础但关键的概念,尤其在多态和泛型中应用广泛。 在描述中...

    C#中实现判断某个类是否实现了某个接口

    有时我们需要判断某个类是否实现了某个接口...从字面意思可以看出,IsAssignableFrom表示BarClass类型能否赋值给IFoo接口,所以它返回true的条件就是BarClass直接或间接实现了IFoo接口。Type类型中还有一个方法是IsSu

    Java对象类型的判断详解

    本文将深入探讨Java中三种主要的判断对象类型的手段:`instanceof`、`Class.equals()`以及`Class.isInstance()`和`Class.isAssignableFrom()`。 1. `instanceof` 关键字: `instanceof` 是Java中最常用的判断对象...

    判断类的缓存大小

    `isAssignableFrom(Class<?> cls)`方法同样是`Class`类中的一个方法,用于判断当前类或接口是否可以被赋予由`cls`参数指定的类型。如果当前类可以赋值给`cls`类型的变量,则返回`true`;否则返回`false`。其用法如下...

    传递参数SendArgs

    } else if (clazz.isAssignableFrom(Serializable.class)) { return (T) bundle.getSerializable(key); } else { // 其他基本类型 return (T) bundle.getString(key); } } return null; } public void ...

    java反射-适合Java开发者学习

    // 输出 true不同的类:Class clazz1 = Class.forName("java.lang.String");Class clazz2 = Class.forName("java.lang.Integer");System.out.println(clazz1 == clazz2); // 输出 false2.2.2、获取类信息一旦我们有...

    扫描接口实现类

    3. **接口扫描**:为了找到实现特定接口的所有类,我们需要遍历类路径,加载每个类,并使用`Class.isAssignableFrom(Class<?> clazz)`检查该类是否实现了目标接口。`getInterfaces()`方法可以获取类实现的所有接口。...

    SonarQube检测出的bug、漏洞以及异味的修复整理

    比较类时,应避免依赖类名,而应使用`instanceof`或`Class.isAssignableFrom()`方法,以确保类型安全。 9. **Prevent int promotion with & 0xff**: 当处理字节时,使用`& 0xff`确保不会发生意外的整数提升。这...

    Java Reflection(JAVA反射)详解

    1. 使用`Class.forName(String className)`方法,传入类的全限定名(包括包名)来获取对应的`Class`对象。 ```java Class<?> c = Class.forName("java.lang.String"); ``` 2. 直接使用类名或基本类型的`.class`...

    反射的使用

    - 判断类是否属于特定类型:`clazz.isAssignableFrom(anotherClass)` 3. 访问类的属性 - 获取Field对象:`field = clazz.getDeclaredField("fieldName")` - 设置属性值:`field.set(obj, value)` - 获取属性值...

    java反射经典实例

    if (classObj.isAssignableFrom(InterfaceClass.class)) { // 类实现了接口 } ``` - 获取注解: ```java Annotation annotation = classObj.getAnnotation(MyAnnotation.class); ``` 6. **异常处理** - ...

    Java反射案例

    反射也可以用来检查一个类是否实现了特定的接口,通过`Class.getInterfaces()`获取类实现的接口,`Class.isAssignableFrom()`判断类或接口之间的关系。 7. **注解处理**: 反射机制同样可以用于读取类、方法或...

    sonarqube代码规范整理_jchaoy

    解决方案:使用 m.getReturnType().isAssignableFrom(void.class) 方法来比较类。 8. "InterruptedException" 不应该被忽略 忽略 InterruptedException 可能会导致程序崩溃和安全漏洞。 解决方案:在 catch 块中...

    java判断class子类或父类的实例方法

    判断一个类是否为另一个类的子类或父类可以使用 Class 对象的 isAssignableFrom() 方法,该方法返回一个布尔值,表示该类是否为另一个类的子类或父类。 在 Java 中,我们可以使用反射机制来获取类中的成员变量、...

    反射简单示例

    1. 使用`Class.forName("类全名")`,例如`Class<?> clazz = Class.forName("java.lang.String");` 2. 对象的`getClass()`方法,例如`String str = "Hello"; Class<?> clazz = str.getClass();` 3. 类的`class`关键字...

    .NET 命名空间类名判断

    在.NET编程语言中,命名空间(Namespace)和类名(Class Name)是代码组织和管理的关键组成部分,它们共同构建了程序的结构,并确保了代码的可读性和可维护性。本文将深入探讨如何在.NET环境中进行命名空间的选择、...

    反射取继承子类.rar

    例如,我们可以通过`Class.forName("全限定类名")`来获取一个类的`Class`对象。 接下来,当我们想获取一个类的所有子类时,Java标准库并没有直接提供这样的API。但我们可以自定义解决方案,通过遍历所有已加载的类...

    ASP的一个面向接口的反射例子

    在这个代码片段中,`Type.GetType(serviceName)`使用字符串服务类型名获取对应的类型对象,`typeof(IService).IsAssignableFrom(serviceType)`检查该类型是否实现了`IService`接口,`Activator.CreateInstance...

Global site tag (gtag.js) - Google Analytics