Proxy基础---------获取collection接口的构造跟方法
1----查看proxy api

2------测试代码
package cn.proxy01;
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.util.Collection;
public class Proxy {
public static void main(String[] args) {
Class clazzProxy = java.lang.reflect.Proxy.getProxyClass(Proxy.class.getClassLoader(), Collection.class);
System.err.println("代理名称:"+clazzProxy.getName());
System.err.println("--------通过代理获取collection的构造 ---------------");
//$Proxy0()
//$Proxy(参数名,参数类型)
Constructor[] constructors = clazzProxy.getConstructors();
for(Constructor constructor : constructors){
String constructionName = constructor.getName();
StringBuilder builder = new StringBuilder(constructionName);
builder.append("(");
Class[] parameters = constructor.getParameterTypes();
for(Class params : parameters){
String param = params.getName();
builder.append(param+",");
}
if(parameters.length != 0 || parameters != null){
builder.deleteCharAt(builder.length()-1);
}
builder.append(")");
System.err.println(builder.toString());
}
System.err.println("--------通过代理获取collection的方法 ---------------");
//remove(java.lang.Object)
Method[] methods = clazzProxy.getMethods();
for(Method method : methods){
String methodName = method.getName();
StringBuilder builder = new StringBuilder(methodName);
builder.append("(");
Class[] parameters = method.getParameterTypes();
for(Class params : parameters){
String param = params.getName();
builder.append(param+",");
}
if(parameters.length != 0 || parameters != null){
builder.deleteCharAt(builder.length()-1);
}
builder.append(")");
System.err.println(builder.toString());
}
}
}
3----运行结果

Proxy基础---------获取collection接口的构造跟方法的更多相关文章
- Java容器---Collection接口中的共有方法
1.Collection 接口 (1)Collection的超级接口是Iterable (2)Collection常用的子对象有:Map.List.Set.Queue. 右图中实现黑框的ArrayLi ...
- List接口相对于Collection接口的特有遍历方法
package com.hxl; import java.util.ArrayList; import java.util.List; public class Test { public stati ...
- Java基础(二十)集合(2)Collection接口
1.Collection接口通常不被直接使用.但是Collection接口定义了一些通用的方法,通过这些方法可以实现对集合的基本操作,因为List接口和Set接口都实现了Collection接口,所以 ...
- 16、Collection接口及其子接口Set和List(常用类LinkedList,ArrayList,Vector和Stack)
16.Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements).一些Collection允许相同 ...
- JAVA中Collection接口和Map接口的主要实现类
Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements).一些Collection允许相同的元素 ...
- JAVA笔记17-容器之一 图、Collection接口、Iterator接口(重要)
掌握1136: (1)1个图 (2)1个类:Collections (3)3个知识点:For(了解),Generic泛型,Auto-boxing/unboxing(自动打包/解包) (4)6个接口:C ...
- Collection接口中的方法的使用
add(Object e):将元素e添加到集合coll中size():获取添加的元素的个数addAll(Collection coll1):将coll1集合中的元素添加到当前的集合中clear():清 ...
- Collection接口
Collection接口所定义的方法: clear:清空 retainAll 求一个Collection和另一个 Collection的交集. object[] toArray() 把里面的各个对象 ...
- Java中的集合(二)单列集合顶层接口------Collection接口
Java中的集合(二)单列集合顶层接口------Collection接口 Collection是一个高度封装的集合接口,继承自Iterable接口,它提供了所有集合要实现的默认方法.由于Iterab ...
随机推荐
- java 操作elasticsearch之搭建测试项目环境
在创建项目之前请确认maven是否安装好,在此我是以环境都搭建好的情况下进行示范,现在以eclipse开发工具为例,具体操作如下: 1.创建maven项目 File - new -other 2.在p ...
- 使用kibana操作elasticsearch实现增删改查
本篇博客,本人写的是方法,大家将对应的字段放入对应的位置就可以了 注:elasticsearch中,索引相当于MySQL中的数据库,类型相当于数据库中的表,即索引名就为数据库库名,类型就为表名 1.创 ...
- javascript 正则表达式学习
正则表达式 正则表达式,一个描述字符模式的对象.javascript的RegExp类表示正则表达式,String和RegExp都定义了方法,后者使用正则表达式进行强大的模式和匹配与替换功能. -- f ...
- mvc、mvp和mvvm理解
MVC.MVP.MVVM这些模式是为了解决开发过程中的实际问题而提出来的,目前作为主流的几种架构模式而被广泛使用. 一.MVC(Model-View-Controller) MVC是比较直观的架构模式 ...
- Ajax进阶之原生js与跨域jsonp
什么是Ajax? 两个数求和: 用Jquery和数据用json格式 viws函数: from django.shortcuts import render,HttpResponse # Create ...
- BZOJ1023:[SHOI2008]cactus仙人掌图(圆方树,DP,单调队列)
Description 如果某个无向连通图的任意一条边至多只出现在一条简单回路(simple cycle)里,我们就称这张图为仙人掌图(cactus). 所谓简单回路就是指在图上不重复经过任何一个顶点 ...
- NET Framework 各版本官方下载
https://msdn.microsoft.com/en-us/library/5a4x27ek(v=vs.110).aspx https://www.microsoft.com/zh-CN/dow ...
- HDU2966 In case of failure(浅谈k-d tree)
嘟嘟嘟 题意:给定\(n\)个二维平面上的点\((x_i, y_i)\),求离每一个点最近的点得距离的平方.(\(n \leqslant 1e5\)) 这就是k-d tree入门题了. k-d tre ...
- Servlet的生命周期以及在Spring MVC中调用流程
接触Web时间比较久,虽然知道Servlet的生命周期但是理解却还是不够,今天刚好debug代码涉及这块就利用余下时间研究了一下. Servlet的生命周期以及处理浏览器请求的过程.Servlet接口 ...
- 【转】Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
转载地址:http://blog.csdn.net/ouyang_peng/article/details/51168072 Android 设备的CPU类型(通常称为”ABIs”) x86: 平板. ...