免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1273 | 回复: 0
打印 上一主题 下一主题

java中判断一个对象是否实现了某个接口收藏 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-02-24 23:17 |只看该作者 |倒序浏览

               
  • /***************************************************************************         * 判断对象o实现的所有接口中是否有szInterface
  •          * 2008-08-07 修正多继承中判断接口的功能,         * 以及修正接口继承后的判断功能
  •          * package test;         *
  •          * public interface ITest extends Serializable         * public class Test1 implements ITest
  •          * public class Test2 extends Test1         * public class Test3 extends Test2
  •          *          * isInterface(Test3.class, "java.io.Serializable") = true
  •          * isInterface(Test3.class, "test.ITest") = true         * @param c
  •          * @param szInterface         * @return
  •          */        public boolean isInterface(Class c, String szInterface)
  •         {                Class[] face = c.getInterfaces();
  •                 for (int i = 0, j = face.length; i                 {
  •                         if(face.getName().equals(szInterface))                        {
  •                                 return true;                        }
  •                         else                        {
  •                                 Class[] face1 = face.getInterfaces();                                for(int x = 0; x
  •                                 {                                        if(face1[x].getName().equals(szInterface))
  •                                         {                                                return true;
  •                                         }                                        else if(isInterface(face1[x], szInterface))
  •                                         {                                                return true;
  •                                         }                                }
  •                         }                }
  •                 if (null != c.getSuperclass())                {
  •                         return isInterface(c.getSuperclass(), szInterface);                }
  •                 return false;        }
                   
                   
                   
                   
                   

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/84280/showart_1841940.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP