java 通过反射得到命名空间_[反射]通用方法 命名空间,类,对象,属性

usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Reflection;namespaceReflection_Test

{public classDLLAnalyst

{private stringfileName;public stringFileName

{get { returnfileName; }set{

fileName=value;this.myAssembly = Assembly.LoadFile(this.fileName);

}

}private Assembly myAssembly = null;publicDLLAnalyst() { }public DLLAnalyst(stringfileName)

{this.fileName =fileName;this.myAssembly = Assembly.LoadFile(this.fileName);

}public ListGetNameSpaces()

{if (this.myAssembly == null) return null;

List list = new List();

Type[] types= this.myAssembly.GetTypes();foreach (Type type intypes)

{if (!list.Contains(type.Namespace))

{

list.Add(type.Namespace);

}

}returnlist;

}public ListGetClasses()

{if (string.IsNullOrEmpty(this.fileName)) return null;

List list = new List();

Type[] types= this.myAssembly.GetTypes();foreach (Type type intypes)

{

ClassInfo classInfo= newClassInfo();

classInfo.NameSpace=type.Namespace;

classInfo.Name=type.Name;

classInfo.FullName=type.FullName;

classInfo.Type=type;

list.Add(classInfo);

}returnlist;

}//public List GetMethodByClass(ClassInfo classInfo)//{//if (this.myAssembly == null) return null;//MethodInfo[] methods = classInfo.Type.GetMethods();//List list = new List();//list.AddRange(methods);//return list;//}

}public classClassInfo

{private stringnameSpace;public stringNameSpace

{get { returnnameSpace; }set { nameSpace =value; }

}private stringname;public stringName

{get { returnname; }set { name =value; }

}private stringfullName;public stringFullName

{get { returnfullName; }set { fullName =value; }

}privateType type;publicType Type

{get { returntype; }set { type =value; }

}publicClassInfo() { }public ClassInfo(string nameSpace, string name,stringfullName,Type type)

{this.nameSpace =nameSpace;this.name =name;this.fullName =fullName;this.type =type;

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值