reflectionclassquery.java

来自「Java的面向对象数据库系统的源代码」· Java 代码 · 共 45 行

JAVA
45
字号
// You can redistribute this software and/or modify it under the terms of// the Ozone Library License version 1 published by ozone-db.org.//// The original code and portions created by SMB are// Copyright (C) 1997-@year@ by SMB GmbH. All rights reserved.//// $Id$package org.ozoneDB.tools.OPP.srcgen.query;import org.ozoneDB.tools.OPP.srcgen.ClassQuery;/** * User: Jocke * Date: 2004-jan-02 * Time: 00:52:24 */public class ReflectionClassQuery implements ClassQuery {    public boolean isAssignable(String itf, String from) throws ClassNotFoundException {        Class itfClass = Class.forName(itf);        Class fromClass = Class.forName(from);        return itfClass.isAssignableFrom(fromClass);    }    public String[] getInterfaces(String className) throws ClassNotFoundException {        Class clazz = Class.forName(className);        Class interfaces [] = clazz.getInterfaces();        return classesToStrings(interfaces);    }    public boolean isInterface(String className) throws ClassNotFoundException {        Class clazz = Class.forName(className);        return clazz.isInterface();    }    private String[] classesToStrings(Class classes[]) {        String names [] = new String[classes.length];        for (int i = 0; i < classes.length; i++) {            Class aClass = classes[i];            names[i] = aClass.getName();        }        return names;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?