判断类是否实现了某个接口 和 是否继承了某个类
2010-12-07 11:08
162 查看
package interfacesabout;
import java.util.AbstractCollection;
public class JudgeInterface {
//2010-12-07
public boolean isInterface(Class<?> clas,String interfaceName){
boolean flag = false;
if(clas == null){
return flag;
}
Class<?>[] face = clas.getInterfaces();
for(Class<?> org : face){
if(org.getName().equals(interfaceName)){
flag = true;
break;
}else{
flag = isInterfaces(org.getInterfaces(),interfaceName);
}
}
return flag;
}
public boolean isInterfaces(Class<?>[] clas,String interfaceName){
boolean flag = false;
if(clas == null){
return flag;
}
for(Class<?> org : clas){
if(org.getName().equals(interfaceName)){
flag = true;
break;
}else{
flag = isInterfaces(org.getInterfaces(),interfaceName);
}
}
return flag;
}
public boolean isInstanceof(Class<?> clas,Class<?> clasExtend){
boolean flag = false;
if(clas == null || clasExtend == null){
return flag;
}
Class<?> org = clas.getSuperclass();
if(org == null){
return flag;
}else if(org.getName().equals(clasExtend.getName())){
flag = true;
}else{
flag = isInstanceof(org,clasExtend);
}
return flag;
}
public static void main(String[] args) {
JudgeInterface judgeInterface = new JudgeInterface();
//boolean flag = judgeInterface.isInterface(DrawHouseClass.class,"interfacesabout.Draw");
//System.out.println(flag);
boolean flag = judgeInterface.isInstanceof(DrawHouseClass.class,AbstractCollection.class);
System.out.println(flag);
}
}
//附件 只需要更改为 .rar 即可
import java.util.AbstractCollection;
public class JudgeInterface {
//2010-12-07
public boolean isInterface(Class<?> clas,String interfaceName){
boolean flag = false;
if(clas == null){
return flag;
}
Class<?>[] face = clas.getInterfaces();
for(Class<?> org : face){
if(org.getName().equals(interfaceName)){
flag = true;
break;
}else{
flag = isInterfaces(org.getInterfaces(),interfaceName);
}
}
return flag;
}
public boolean isInterfaces(Class<?>[] clas,String interfaceName){
boolean flag = false;
if(clas == null){
return flag;
}
for(Class<?> org : clas){
if(org.getName().equals(interfaceName)){
flag = true;
break;
}else{
flag = isInterfaces(org.getInterfaces(),interfaceName);
}
}
return flag;
}
public boolean isInstanceof(Class<?> clas,Class<?> clasExtend){
boolean flag = false;
if(clas == null || clasExtend == null){
return flag;
}
Class<?> org = clas.getSuperclass();
if(org == null){
return flag;
}else if(org.getName().equals(clasExtend.getName())){
flag = true;
}else{
flag = isInstanceof(org,clasExtend);
}
return flag;
}
public static void main(String[] args) {
JudgeInterface judgeInterface = new JudgeInterface();
//boolean flag = judgeInterface.isInterface(DrawHouseClass.class,"interfacesabout.Draw");
//System.out.println(flag);
boolean flag = judgeInterface.isInstanceof(DrawHouseClass.class,AbstractCollection.class);
System.out.println(flag);
}
}
//附件 只需要更改为 .rar 即可
相关文章推荐
- 判断一个类是否继承于指定类或是否实现了指定接口
- 判断某个类是否实现了某个接口或者继承了某个父类的方法
- C#中如何判断实例是否继承了某个父类或者实现了某类接口
- as3 判断,某个类是否继承于某个类,某个类是否实现某个接口的方法
- Delphi判断某个类是否实现了某个接口
- 通过反射来判断某个程序集中是否有实现该接口的类
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- C#判断某个类是否派生某个类或是否实现了某个接口
- 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
- 在C#中判断某个类是否实现了某个接口
- 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
- 【.Net】在C#中判断某个类是否实现了某个接口
- 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
- 【Java面试题】60 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承具体类(concrete class)? 抽象类中是否可以有静态的main方法?
- java中判断一个对象是否实现了某个接口
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- C#判断一个类是否实现了某个接口3种实现方法
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- 接口是否可以继承接口;抽象类是否可以实现接口;抽象类是否可以继承实体类?
- 第二十二,接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?