`

判断某个类是否实现了某个接口或者继承了某个父类的方法

阅读更多

一、背景:有的时候需要动态判断一个类是否实现了某个接口或者继承了某个父类。其实java里面已经有方法了,只是平时用的机会很少,在此mark一下

 

二、上代码

import java.io.Serializable;

public class IsAssignableFromTest implements Serializable{

    /** 序列号 */
    private static final long serialVersionUID = 5716955136475665579L;

    public static void main(String[] args) {
        
        //测试是否实现了父类
        boolean re1= Object.class.isAssignableFrom(IsAssignableFromTest.class);
        //测试是否实现了接口
        boolean re2=Serializable.class.isAssignableFrom(IsAssignableFromTest.class);
        
        System.out.println("re1:"+re1+" re2:"+re2);
    }
}

 

结果:re1:true re2:true

分享到:
评论
1 楼 sp42 2016-07-03  
 

相关推荐

    【05-面向对象(下)】

    •接口的继承和类继承不一样,接口完全支持多继承,子接口扩展某个父接口将会获得父接口的所有抽象方法,常 量属性,内部类和枚举类定义。 使用接口 •接口可以用于声明引用类型的变量,但接口不能用于...

    JAVA面试题最全集

    用关键字final修饰一个类或者方法时,有何意义? 48.掌握类和对象的概念,掌握面向对象编程的本质 49.静态变量和静态方法的意义,如何引用一个类的静态变量或者静态方法? 50.JAVA语言如何进行异常处理,关键字:...

    Java程序设计习题(含答案解析).doc

    一个类如果实现了某个接口,那么它必须重载该接口中的所有方法。( T ) 12.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定 终止运行。( T ) 13.接口是特殊的类,所以接口也可以继承,...

    java课程实验

    2、使用一维数组编码实现一个栈(Stack)类,要求提供以下操作:(1)boolean isEmpty():判断栈当前是否为空;(2)入栈操作void push(obj):把数据元素obj插入堆栈;(3)出栈操作Object pop():出栈,并返回删除...

    java面试题

    重写Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向对象...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    (5) implements 子句用于说明类中将实现哪些接口,接口是 Java 的一种引用类 型。 (6) 类体包含了变量和方法。在类体中定义的数据、变量和方法称为类的成员, 或称为实例变量和实例方法。 (7) 例如: 下例定义...

    \java超强笔记(超级经典)

    <E extends Numner&comparator> 类名&接口,表示E继承Numner类实现comparator接口 <?> 泛型通配符表示任意类型,仅用于传参 类型> 表示这个类型可以是该类或者该类的子类。 类型> 表示这个类型可以是该...

    浅谈PHP中类和对象的相关函数

    判断某个属性是否存在,就是使用isset get_class 获得当前对象所属的类! 参数是一个对象! get_parent_class 获得对象的父类名! get_class_methods 需要一个参数为一个类名,返回一个索引数组,里面的元素是...

    〖程序设计基础〗练习题3及答案

    8.如果子类中的某个方法的________、___________和___________与它的父类中的某个方法完全一样,则称子类中的这个方法覆盖了父类的同名方法。 9.若a,b为int型变量且已分别赋值为2,6。表达式(a++)+(++b) +a*b的值是_...

    软件工程-理论与实践(许家珆)习题答案

    C) 方法、对象和类  D) 过程、模型、方法 3. 包含风险分析的软件工程模型是(A)。 A) 螺旋模型 B) 瀑布模型 C) 增量模型 D) 喷泉模型 4. 软件工程的主要目标是(C)。 A) 软件需求 B) 软件设计 C) 风险分析...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例135 检测数组中是否存在某个值 163 实例136 获取数组中的当前单元 164 实例137 从数组中随机取出元素 165 实例138 合并数组 166 实例139 拆分数组 167 实例140 遍历数组 168 2.11 日期和时间 169 实例141 设置...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例135 检测数组中是否存在某个值 163 实例136 获取数组中的当前单元 164 实例137 从数组中随机取出元素 165 实例138 合并数组 166 实例139 拆分数组 167 实例140 遍历数组 168 2.11 日期和时间 169 实例141 设置...

    程序设计基础答案

    如果子类中的某个方法的名字、返回值类型和参数列表与它的父类中的某个方法完全一样,则称子类中的这个方法 __________了父类的同名方法。 13.同类中多个方法具有相同的方法名,不同的_____________称为方法的...

    计算机二级公共基础知识

    队列的修改是依照先进先出的原则进行的,因此队列也称为先进先出的线性表,或者后进后出的线性表。例如:火车进遂道,最先进遂道的是火车头,最后是火车尾,而火车出遂道的时候也是火车头先出,最后出的是火车尾。若...

    软件工程知识点

    结构化分析就是基于数据流的细化实现的,它是结构化分析方法的关键。 (3)数据关系模型。也称为ER图,是应用最广泛的数据库建模工具。需要通过数据实体、数据关系和数据属性这三类图形元素建立数据关系模型。 (4)...

    达内 coreJava 习题答案

    1,编写程序,判断给定的某个年份是否是闰年。 闰年的判断规则如下: (1)若某个年份能被4整除但不能被100整除,则是闰年。 (2)若某个年份能被400整除,则也是闰年。 import java.util.Scanner; class ...

Global site tag (gtag.js) - Google Analytics