集册 Java实例教程 获取扩展的类的集合,以及由指定的类(包括其自身)实现的接口。

获取扩展的类的集合,以及由指定的类(包括其自身)实现的接口。

欢马劈雪     最近更新时间:2020-01-02 10:19:05

482
获取扩展的类的集合,以及由指定的类(包括其自身)实现的接口。
/*时 代 J a v a 公 众 号 - nowjava.com*/

/*

 Copyright 2005-2006 Seth Fitzsimmons <seth@mojodna.net>


 Licensed under the Apache License, Version 2.0 (the "License");

 you may not use this file except in compliance with the License.

 You may obtain a copy of the License at


 http://www.apache.org/licenses/LICENSE-2.0


 Unless required by applicable law or agreed to in writing, software

 distributed under the License is distributed on an "AS IS" BASIS,

 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

 See the License for the specific language governing permissions and

 limitations under the License.

 */

//package com.nowjava;


import java.util.Collection;

import java.util.HashSet;


public class Main {



    /**

     * Gets a Collection of classes extended and interfaces implemented by the

     * specified class (including itself).

     * 

     * This could be done with ClassUtils, but this is more direct.

     * 

     * @param clazz Class to inspect.

     * @return Collection of classes extended and interfaces implemented.

     */

    private static Collection<Class> getClasses(Class clazz) {

        final Collection<Class> classes = new HashSet<Class>();

        while (null != clazz) {

            classes.add(clazz);


            // add implemented interfaces to the list of classes to check

            for (
展开阅读全文