<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="canonical" href="http://blog.youkuaiyun.com/ichsonx/article/details/9108173"/>
<meta http-equiv="Cache-Control" content="no-siteapp" /><link rel="alternate" media="handheld" href="#" />
<meta name="shenma-site-verification" content="5a59773ab8077d4a62bf469ab966a63b_1497598848">
<title>通过Java反射调用方法 - ichsonx的专栏
- 优快云博客</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="传送么:http://lavasoft.blog.51cto.com/62575/61002/这是个测试用的例子,通过反射调用对象的方法。 TestRef.javaimport java.lang.reflect.Method; import java.lang.reflect.InvocationTargetException;/** * Creat" />
<meta name="keywords" content="" />
<script src="http://static.blog.youkuaiyun.com/scripts/blog_static_head.min.js" type="text/javascript"></script>
<!--new top-->
<!--new top-->
<!-- ad begin -->
<!-- ad end-->
<link rel="Stylesheet" type="text/css" href="http://static.blog.youkuaiyun.com/skin/dark1/css/style.css?v=1.1" />
<link id="RSSLink" title="RSS" type="application/rss+xml" rel="alternate" href="/ichsonx/rss/list" />
<link rel="shortcut icon" href="http://c.csdnimg.cn/public/favicon.ico" />
<link type="text/css" rel="stylesheet" href="http://static.blog.youkuaiyun.com/scripts/SyntaxHighlighter/styles/nobg.css" />
<link href="http://c.csdnimg.cn/blog/csdn_public_blog_detail.min.css" type="text/css" rel="stylesheet" />
<link rel="stylesheet" href="http://static.blog.youkuaiyun.com/css/csdn_blog_detail.min.css" />
<!-- 请置于所有广告位代码之前 -->
<script src="http://dup.baidustatic.com/js/ds.js"></script>
</head>
<body>
<div class="tracking-ad" data-view="true" data-mod="ad_popu_72" data-mtp="62" data-order="40" data-con="ad_content_2072" >
<script id="popuLayer_js_q" src="http://ads.youkuaiyun.com/js/popuLayer.js" defer="defer" type="text/javascript"></script>
<div id="layerd" style="position: fixed;bottom:0px;right:0px;line-height:0px;z-index:1000">
<div class="J_close layer_close" style="display:;background-color:#efefef;padding:0px;color:#333;font:12px/24px Helvetica,Tahoma,Arial,sans-serif;text-align:right;">关闭</div><!-- 广告占位容器 --><div id="cpro_u2895327"></div></div>
<script> document.getElementById("popuLayer_js_q").onload = function () { var styObjd = styObj = { width: "300px", "height": parseInt(250) + 28 }; window.优快云.Layer.PopuLayer("#layerd", { storageName: "layerd", styleObj: styObjd, total: 50, expoire: 1000 * 60 }); }</script><!-- 投放代码 --><script type="text/javascript"> /*服务器频道首页置顶Banner960*90,创建于2014-7-3*/ (window.cproArray = window.cproArray || []).push({ id: "u2895327" }); </script> <script src="http://cpro.baidustatic.com/cpro/ui/c.js" type="text/javascript"></script>
</div>
<!-- 广告位开始 -->
<!-- 广告位结束 -->
<!--new top-->
<script id="toolbar-tpl-scriptId" fixed="true" prod="blog" skin="black" src="http://c.csdnimg.cn/public/common/toolbar/js/html.js" type="text/javascript"></script>
<!--new top-->
<div id="container">
<div id="header">
<div class="header">
<div id="blog_title">
<h2>
<a href="http://blog.youkuaiyun.com/ichsonx">ichsonx的专栏</a></h2>
<h3>见不贤内自省....</h3>
<div class="clear">
</div>
</div>
<div class="clear">
</div>
</div>
</div>
<div id="navigator">
<div class="navigator_bg">
</div>
<div class="navigator">
<ul>
<li id="btnContents"><a href="http://blog.youkuaiyun.com/ichsonx?viewmode=contents"><span οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_mulu'])">
<img src="http://static.blog.youkuaiyun.com/images/ico_list.gif">目录视图</span></a></li>
<li id="btnView"><a href="http://blog.youkuaiyun.com/ichsonx?viewmode=list"><span οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_zhaiyao'])">
<img src="http://static.blog.youkuaiyun.com/images/ico_summary.gif">摘要视图</span></a></li>
<li id="btnRss"><a href="http://blog.youkuaiyun.com/ichsonx/rss/list"><span οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_RSS'])">
<img src="http://static.blog.youkuaiyun.com/images/ico_rss.gif">订阅</span></a></li>
</ul>
</div>
</div>
<script type="text/javascript">
var username = "ichsonx";
var _blogger = username;
var blog_address = "http://blog.youkuaiyun.com/ichsonx";
var static_host = "http://static.blog.youkuaiyun.com";
var currentUserName = "Royal_Dennis";
</script>
<div id="body">
<div id="main">
<div class="main">
<div class="ad_class">
<div class="notice tracking-ad" data-mod='popu_3' >
<a href="http://blog.youkuaiyun.com/epubit17/article/details/77770966">
<font color=red><strong>异步赠书:Kotlin领衔10本好书</strong></font></a>
<a href="http://edu.youkuaiyun.com/huiyiCourse/series_detail/63">
<font color=red><strong>免费直播:AI时代,机器学习如何入门?</strong></font></a>
<a href="http://blog.youkuaiyun.com/turingbooks/article/details/77479427">
<font color=blue><strong>程序员8月书讯</strong></font></a>
<a href="https://gitee.com/enterprises?from=csdn-sqbkxq">
<font color=red><strong>项目管理+代码托管+文档协作,开发更流畅</strong></font></a>
</div> </div>
<script type="text/javascript" src="http://static.blog.youkuaiyun.com/scripts/category.js"></script>
<script type="text/ecmascript">
window.quickReplyflag = true;
var isBole = false;
var fasrc="http://my.youkuaiyun.com/my/favorite/miniadd?t=%e9%80%9a%e8%bf%87Java%e5%8f%8d%e5%b0%84%e8%b0%83%e7%94%a8%e6%96%b9%e6%b3%95&u=http://blog.youkuaiyun.com/ichsonx/article/details/9108173"
</script>
<div id="article_details" class="details">
<div class="article_title">
<span class="ico ico_type_Repost"></span>
<h1>
<span class="link_title"><a href="/ichsonx/article/details/9108173">
通过Java反射调用方法
</a>
</span>
</h1>
</div>
<div class="article_manage clearfix">
<div class="article_r">
<span class="link_postdate">2013-06-16 21:19</span>
<span class="link_view" title="阅读次数">93980人阅读</span>
<span class="link_comments" title="评论次数"> <a href="#comments" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_pinglun'])">评论</a>(3)</span>
<span class="link_collect tracking-ad" data-mod="popu_171"> <a href="javascript:void(0);" οnclick="javascript:collectArticle('%e9%80%9a%e8%bf%87Java%e5%8f%8d%e5%b0%84%e8%b0%83%e7%94%a8%e6%96%b9%e6%b3%95','9108173');return false;" title="收藏">收藏</a></span>
<span class="link_report"> <a href="#report" οnclick="javascript:report(9108173,2);return false;" title="举报">举报</a></span>
</div>
</div> <style type="text/css">
.embody{
padding:10px 10px 10px;
margin:0 -20px;
border-bottom:solid 1px #ededed;
}
.embody_b{
margin:0 ;
padding:10px 0;
}
.embody .embody_t,.embody .embody_c{
display: inline-block;
margin-right:10px;
}
.embody_t{
font-size: 12px;
color:#999;
}
.embody_c{
font-size: 12px;
}
.embody_c img,.embody_c em{
display: inline-block;
vertical-align: middle;
}
.embody_c img{
width:30px;
height:30px;
}
.embody_c em{
margin: 0 20px 0 10px;
color:#333;
font-style: normal;
}
</style>
<script type="text/javascript">
$(function () {
try
{
var lib = eval("("+$("#lib").attr("value")+")");
var html = "";
if (lib.err == 0) {
$.each(lib.data, function (i) {
var obj = lib.data[i];
//html += '<img src="' + obj.logo + '"/>' + obj.name + " ";
html += ' <a href="' + obj.url + '" target="_blank">';
html += ' <img src="' + obj.logo + '">';
html += ' <em><b>' + obj.name + '</b></em>';
html += ' </a>';
});
if (html != "") {
setTimeout(function () {
$("#lib").html(html);
$("#embody").show();
}, 100);
}
}
} catch (err)
{ }
});
</script>
<div class="category clearfix">
<div class="category_l">
<img src="http://static.blog.youkuaiyun.com/images/category_icon.jpg">
<span>分类:</span>
</div>
<div class="category_r">
<label οnclick="GetCategoryArticles('331416','ichsonx','top','9108173');">
<span οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_fenlei']);">JAVA<em>(51)</em></span>
<img class="arrow-down" src="http://static.blog.youkuaiyun.com/images/arrow_triangle _down.jpg" style="display:inline;">
<img class="arrow-up" src="http://static.blog.youkuaiyun.com/images/arrow_triangle_up.jpg" style="display:none;">
<div class="subItem">
<div class="subItem_t"><a href="http://blog.youkuaiyun.com/ichsonx/article/category/331416" target="_blank">作者同类文章</a><i class="J_close">X</i></div>
<ul class="subItem_l" id="top_331416">
</ul>
</div>
</label>
</div>
</div>
<div id="article_content" class="article_content tracking-ad" data-mod=popu_307 data-dsm = "post" >
<div><strong><a href="http://lavasoft.blog.51cto.com/62575/61002/">传送么:http://lavasoft.blog.51cto.com/62575/61002/</a></strong><br>
这是个测试用的例子,通过反射调用对象的方法。</div>
<div> </div>
<div> </div>
<div>TestRef.java</div>
<div>
<div style="border-right:#cccccc 1px solid; padding-right:4px; border-top:#cccccc 1px solid; padding-left:4px; font-size:10pt; padding-bottom:4px; border-left:#cccccc 1px solid; width:98%; color:#000000; word-break:break-all; line-height:16px; padding-top:4px; border-bottom:#cccccc 1px solid; font-family:verdana,宋体; background-color:#eeeeee">
<span style="color:#0000ff">import</span> java.lang.reflect.Method; <br>
<span style="color:#0000ff">import</span> java.lang.reflect.InvocationTargetException;<br>
<br>
<span style="color:#008000">/** <br>
* Created by IntelliJ IDEA. <br>
* File: TestRef.java <br>
* User: leizhimin <br>
* Date: 2008-1-28 14:48:44 <br>
*/</span> <br>
<span style="color:#0000ff">public</span> <span style="color:#0000ff">class</span> TestRef {<br>
<br>
<span style="color:#0000ff">public</span> <span style="color:#0000ff">static</span><span style="color:#0000ff">void</span> main(String args[])
<span style="color:#0000ff">throws</span> NoSuchMethodException, IllegalAccessException, InvocationTargetException {<br>
Foo foo = <span style="color:#0000ff">new</span> Foo(<span style="color:#800000">"这个一个Foo对象!"</span>);<br>
Class clazz = foo.getClass(); <br>
Method m1 = clazz.getDeclaredMethod(<span style="color:#800000">"outInfo"</span>);<br>
Method m2 = clazz.getDeclaredMethod(<span style="color:#800000">"setMsg"</span>, String.<span style="color:#0000ff">class</span>);<br>
Method m3 = clazz.getDeclaredMethod(<span style="color:#800000">"getMsg"</span>);<br>
m1.invoke(foo); <br>
m2.invoke(foo, <span style="color:#800000">"重新设置msg信息!"</span>); <br>
String msg = (String) m3.invoke(foo); <br>
System.out.println(msg); <br>
} <br>
} <br>
<br>
<span style="color:#0000ff">class</span> Foo { <br>
<span style="color:#0000ff">private</span> String msg; <br>
<br>
<span style="color:#0000ff">public</span> Foo(String msg) { <br>
<span style="color:#0000ff">this</span>.msg = msg; <br>
} <br>
<br>
<span style="color:#0000ff">public</span> <span style="color:#0000ff">void</span> setMsg(String msg) {<br>
<span style="color:#0000ff">this</span>.msg = msg; <br>
} <br>
<br>
<span style="color:#0000ff">public</span> String getMsg() { <br>
<span style="color:#0000ff">return</span> msg; <br>
} <br>
<br>
<span style="color:#0000ff">public</span> <span style="color:#0000ff">void</span> outInfo() {<br>
System.out.println(<span style="color:#800000">"这是测试Java反射的测试类"</span>); <br>
} <br>
}</div>
</div>
<div> </div>
<div>控制台输出结果:</div>
<div>
<div style="border-right:#cccccc 1px solid; padding-right:4px; border-top:#cccccc 1px solid; padding-left:4px; font-size:10pt; padding-bottom:4px; border-left:#cccccc 1px solid; width:98%; color:#000000; word-break:break-all; line-height:16px; padding-top:4px; border-bottom:#cccccc 1px solid; font-family:verdana,宋体; background-color:#eeeeee">
这是测试Java反射的测试类 <br>
重新设置msg信息! <br>
<br>
Process finished with exit code 0 <br>
<br>
<br>
</div>
</div>
<div> <br>
<br>
<br>
<br>
<strong><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089">传送门:http://blog.youkuaiyun.com/hbcui1984/article/details/2719089</a></strong><br>
<br>
<span style="font-family:宋体; font-size:14pt"><strong style="font-size:16pt">JAVA反射使用手</strong>记</span>
<p> 本篇文章为在工作中使用JAVA反射的经验总结,也可以说是一些小技巧,以后学会新的小技巧,会不断更新。本文不准备讨论JAVA反射的机制,网上有很多,大家随便google一下就可以了。</p>
<p> 在开始之前,我先定义一个测试类Student,代码如下:</p>
<div class="dp-highlighter bg_Java">
<div class="bar">
<div class="tools"><strong>[Java]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-j" start="1">
<li class="alt"><span><span class="keyword">package</span><span> chb.test.reflect; </span></span></li><li><span> </span></li><li class="alt"><span><span class="keyword">public</span><span> </span><span class="keyword">class</span><span> Student { </span></span></li><li><span> <span class="keyword">private</span><span> </span><span class="keyword">int</span><span> age; </span></span></li><li class="alt"><span> <span class="keyword">private</span><span> String name; </span></span></li><li><span> <span class="keyword">public</span><span> </span><span class="keyword">int</span><span> getAge() { </span></span></li><li class="alt"><span> <span class="keyword">return</span><span> age; </span></span></li><li><span> } </span></li><li class="alt"><span> <span class="keyword">public</span><span> </span><span class="keyword">void</span><span> setAge(</span><span class="keyword">int</span><span> age) { </span></span></li><li><span> <span class="keyword">this</span><span>.age = age; </span></span></li><li class="alt"><span> } </span></li><li><span> <span class="keyword">public</span><span> String getName() { </span></span></li><li class="alt"><span> <span class="keyword">return</span><span> name; </span></span></li><li><span> } </span></li><li class="alt"><span> <span class="keyword">public</span><span> </span><span class="keyword">void</span><span> setName(String name) { </span></span></li><li><span> <span class="keyword">this</span><span>.name = name; </span></span></li><li class="alt"><span> } </span></li><li><span> </span></li><li class="alt"><span> <span class="keyword">public</span><span> </span><span class="keyword">static</span><span> </span><span class="keyword">void</span><span> hi(</span><span class="keyword">int</span><span> age,String name){ </span></span></li><li><span> System.out.println(<span class="string">"大家好,我叫"</span><span>+name+</span><span class="string">",今年"</span><span>+age+</span><span class="string">"岁"</span><span>); </span></span></li><li class="alt"><span> } </span></li><li><span>}<pre></pre> </span></li></ol>
</div>
<p><strong>一、JAVA反射的常规使用步骤</strong></p>
<p dir="ltr" style="margin-right:0px"> 反射调用一般分为3个步骤:</p>
<ul dir="ltr">
<li>
<div style="margin-right:0px">得到要调用类的class</div>
</li><li>
<div style="margin-right:0px">得到要调用的类中的方法(Method)</div>
</li><li>
<div style="margin-right:0px">方法调用(invoke)</div>
</li></ul>
<p dir="ltr" style="margin-right:0px"> 代码示例:</p>
<div class="dp-highlighter bg_Csharp">
<div class="bar">
<div class="tools"><strong>[Csharp]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-c" start="1">
<li class="alt"><span><span>Class cls = Class.forName(</span><span class="string">"chb.test.reflect.Student"</span><span>); </span></span></li><li><span>Method m = cls.getDeclaredMethod(<span class="string">"hi"</span><span>,</span><span class="keyword">new</span><span> Class[]{</span><span class="keyword">int</span><span>.</span><span class="keyword">class</span><span>,String.</span><span class="keyword">class</span><span>}); </span></span></li><li class="alt"><span>m.invoke(cls.newInstance(),20,<span class="string">"chb"</span><span>);<pre></pre> </span></span></li></ol>
</div>
<p><strong>二、方法调用中的参数类型</strong></p>
<p> 在方法调用中,参数类型必须正确,这里需要注意的是不能使用包装类替换基本类型,比如不能使用Integer.class代替int.class。</p>
<p> 如我要调用Student的setAge方法,下面的调用是正确的:</p>
<p> </p>
<div class="dp-highlighter bg_Java">
<div class="bar">
<div class="tools"><strong>[Java]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-j" start="1">
<li class="alt"><span><span>Class cls = Class.forName(</span><span class="string">"chb.test.reflect.Student"</span><span>); </span></span></li><li><span>Method setMethod = cls.getDeclaredMethod(<span class="string">"setAge"</span><span>,</span><span class="keyword">int</span><span>.</span><span class="keyword">class</span><span>); </span></span></li><li class="alt"><span>setMethod.invoke(cls.newInstance(), <span class="number">15</span><span>);<pre></pre> </span></span></li></ol>
</div>
<p> </p>
<p> 而如果我们用Integer.class替代int.class就会出错,如:</p>
<div class="dp-highlighter bg_Java">
<div class="bar">
<div class="tools"><strong>[Java]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-j" start="1">
<li class="alt"><span><span>Class cls = Class.forName(</span><span class="string">"chb.test.reflect.Student"</span><span>); </span></span></li><li><span>Method setMethod = cls.getDeclaredMethod(<span class="string">"setAge"</span><span>,Integer.</span><span class="keyword">class</span><span>); </span></span></li><li class="alt"><span>setMethod.invoke(cls.newInstance(), <span class="number">15</span><span>);<pre></pre> </span></span></li></ol>
</div>
<p> </p>
<p> jvm会报出如下异常:</p>
<div class="dp-highlighter bg_HTML">
<div class="bar">
<div class="tools"><strong>[HTML]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-xml" start="1">
<li class="alt"><span><span>java.lang.NoSuchMethodException: chb.test.reflect.Student.setAge(java.lang.Integer) </span></span></li><li><span> at java.lang.Class.getDeclaredMethod(Unknown Source) </span></li><li class="alt"><span> at chb.test.reflect.TestClass.testReflect(TestClass.java:23)<span class="tag"><</span><span class="tag-name">pre</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">pre</span><span class="tag">></span><span> </span></span></li></ol>
</div>
<p> </p>
<p><strong>三、static方法的反射调用</strong></p>
<p> </p>
<p> static方法调用时,不必得到对象示例,如下:</p>
<div class="dp-highlighter bg_Java">
<div class="bar">
<div class="tools"><strong>[Java]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-j" start="1">
<li class="alt"><span><span>Class cls = Class.forName(</span><span class="string">"chb.test.reflect.Student"</span><span>); </span></span></li><li><span>Method staticMethod = cls.getDeclaredMethod(<span class="string">"hi"</span><span>,</span><span class="keyword">int</span><span>.</span><span class="keyword">class</span><span>,String.</span><span class="keyword">class</span><span>); </span></span></li><li class="alt"><span>staticMethod.invoke(cls,<span class="number">20</span><span>,</span><span class="string">"chb"</span><span>);</span><span class="comment">//这里不需要newInstance</span><span> </span></span></li><li><span><span class="comment">//staticMethod.invoke(cls.newInstance(),20,"chb");<pre></pre></span><span> </span></span></li></ol>
</div>
<p><strong>四、private的成员变量赋值</strong></p>
<p> 如果直接通过反射给类的private成员变量赋值,是不允许的,这时我们可以通过setAccessible方法解决。代码示例:</p>
<div class="dp-highlighter bg_Java">
<div class="bar">
<div class="tools"><strong>[Java]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-j" start="1">
<li class="alt"><span><span>Class cls = Class.forName(</span><span class="string">"chb.test.reflect.Student"</span><span>); </span></span></li><li><span>Object student = cls.newInstance();<span class="comment">//得到一个实例</span><span> </span></span></li><li class="alt"><span>Field field = cls.getDeclaredField(<span class="string">"age"</span><span>); </span></span></li><li><span>field.set(student, <span class="number">10</span><span>); </span></span></li><li class="alt"><span>System.out.println(field.get(student));<pre></pre> </span></li></ol>
</div>
<p> </p>
<p> 运行如上代码,系统会报出如下异常:</p>
<div class="dp-highlighter bg_HTML">
<div class="bar">
<div class="tools"><strong>[HTML]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-xml" start="1">
<li class="alt"><span><span>java.lang.IllegalAccessException: Class chb.test.reflect.TestClass can not access a member of class chb.test.reflect.Student with modifiers "private" </span></span></li><li><span> at sun.reflect.Reflection.ensureMemberAccess(Unknown Source) </span></li><li class="alt"><span> at java.lang.reflect.Field.doSecurityCheck(Unknown Source) </span></li><li><span> at java.lang.reflect.Field.getFieldAccessor(Unknown Source) </span></li><li class="alt"><span> at java.lang.reflect.Field.set(Unknown Source) </span></li><li><span> at chb.test.reflect.TestClass.testReflect(TestClass.java:20)<span class="tag"><</span><span class="tag-name">pre</span><span class="tag">></span><span class="tag"></</span><span class="tag-name">pre</span><span class="tag">></span><span> </span></span></li></ol>
</div>
<p> 解决方法:</p>
<div class="dp-highlighter bg_Java">
<div class="bar">
<div class="tools"><strong>[Java]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-j" start="1">
<li class="alt"><span><span>Class cls = Class.forName(</span><span class="string">"chb.test.reflect.Student"</span><span>); </span></span></li><li><span>Object student = cls.newInstance(); </span></li><li class="alt"><span>Field field = cls.getDeclaredField(<span class="string">"age"</span><span>); </span></span></li><li><span>field.setAccessible(<span class="keyword">true</span><span>);</span><span class="comment">//设置允许访问</span><span> </span></span></li><li class="alt"><span>field.set(student, <span class="number">10</span><span>); </span></span></li><li><span>System.out.println(field.get(student));<pre></pre> </span></li></ol>
</div>
<p> 其实,在某些场合下(类中有get,set方法),可以先反射调用set方法,再反射调用get方法达到如上效果,代码示例:</p>
<div class="dp-highlighter bg_Java">
<div class="bar">
<div class="tools"><strong>[Java]</strong> <a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="ViewSource" title="view plain">
view plain</a><a href="http://blog.youkuaiyun.com/hbcui1984/article/details/2719089#" class="CopyToClipboard" title="copy">copy</a></div>
</div>
<ol class="dp-j" start="1">
<li class="alt"><span><span>Class cls = Class.forName(</span><span class="string">"chb.test.reflect.Student"</span><span>); </span></span></li><li><span>Object student = cls.newInstance(); </span></li><li class="alt"><span> </span></li><li><span>Method setMethod = cls.getDeclaredMethod(<span class="string">"setAge"</span><span>,Integer.</span><span class="keyword">class</span><span>); </span></span></li><li class="alt"><span>setMethod.invoke(student, <span class="number">15</span><span>);</span><span class="comment">//调用set方法</span><span> </span></span></li><li><span> </span></li><li class="alt"><span>Method getMethod = cls.getDeclaredMethod(<span class="string">"getAge"</span><span>); </span></span></li><li><span>System.out.println(getMethod.invoke(student));<span class="comment">//再调用get方法<pre></pre></span><span>
<br>
</span></span></li></ol>
</div>
<br>
</div>
</div>
<!-- Baidu Button BEGIN -->
<div class="bdsharebuttonbox tracking-ad" style="float: right;" data-mod="popu_172">
<a href="#" class="bds_more" data-cmd="more" style="background-position:0 0 !important; background-image: url(http://bdimg.share.baidu.com/static/api/img/share/icons_0_16.png?v=d754dcc0.png) !important"></a>
<a href="#" class="bds_qzone" data-cmd="qzone" title="分享到QQ空间" style="background-position:0 -52px !important"></a>
<a href="#" class="bds_tsina" data-cmd="tsina" title="分享到新浪微博"style="background-position:0 -104px !important"></a>
<a href="#" class="bds_tqq" data-cmd="tqq" title="分享到腾讯微博"style="background-position:0 -260px !important"></a>
<a href="#" class="bds_renren" data-cmd="renren" title="分享到人人网"style="background-position:0 -208px !important"></a>
<a href="#" class="bds_weixin" data-cmd="weixin" title="分享到微信"style="background-position:0 -1612px !important" ></a>
</div>
<script>window._bd_share_config = { "common": { "bdSnsKey": {}, "bdText": "", "bdMini": "1", "bdMiniList": false, "bdPic": "", "bdStyle": "0", "bdSize": "16" }, "share": {} }; with (document) 0[(getElementsByTagName('head')[0] || body).appendChild(createElement('script')).src = 'http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion=' + ~(-new Date() / 36e5)];</script>
<!-- Baidu Button END -->
<!--172.16.140.15-->
<!-- Baidu Button BEGIN -->
<script type="text/javascript" id="bdshare_js" data="type=tools&uid=1536434" ></script>
<script type="text/javascript" id="bdshell_js"></script>
<script type="text/javascript">
document.getElementById("bdshell_js").src = "http://bdimg.share.baidu.com/static/js/shell_v2.js?cdnversion=" + Math.ceil(new Date()/3600000)
</script>
<!-- Baidu Button END -->
<div id="digg" ArticleId="9108173" >
<dl id="btnDigg" class="digg digg_enable" οnclick="btndigga();">
<dt>顶</dt>
<dd>23</dd>
</dl>
<dl id="btnBury" class="digg digg_enable" οnclick="btnburya();">
<dt>踩</dt>
<dd>0</dd>
</dl>
</div>
<div class="tracking-ad" data-mod="popu_222"><a href="javascript:void(0);" > </a> </div>
<div class="tracking-ad" data-mod="popu_223"> <a href="javascript:void(0);" > </a></div>
<script type="text/javascript">
function btndigga() {
$(".tracking-ad[data-mod='popu_222'] a").click();
}
function btnburya() {
$(".tracking-ad[data-mod='popu_223'] a").click();
}
</script>
<ul class="article_next_prev">
<li class="prev_article"><span οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_shangyipian']);location.href='http://blog.youkuaiyun.com/ichsonx/article/details/9081351';">上一篇</span><a href="http://blog.youkuaiyun.com/ichsonx/article/details/9081351" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_shangyipian'])">候捷谈Java反射机制</a></li>
<li class="next_article"><span οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_xiayipian']);location.href='http://blog.youkuaiyun.com/ichsonx/article/details/9148497';">下一篇</span><a href="http://blog.youkuaiyun.com/ichsonx/article/details/9148497" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_xiayipian'])">更改eclipse的编辑器样式风格</a></li>
</ul>
<div style="clear:both; height:10px;"></div>
<div class="similar_article" >
<h4></h4>
<div class="similar_c"style="margin:20px 0px 0px 0px">
<div class="similar_c_t">
相关文章推荐
</div>
<div class="similar_wrap tracking-ad" data-mod="popu_36" style="max-height:250px">
<ul class="similar_list fl">
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/yjaspire/article/details/51553371" title="JAVA 反射 动态调用不同类的静态方法" strategy="BlogCommendFromBaidu_0" target="_blank">JAVA 反射 动态调用不同类的静态方法</a>
</li>
<li>
<em>•</em>
<a href="http://edu.youkuaiyun.com/huiyiCourse/series_detail/60?utm_source=blog7" title="【直播】打通Linux脉络 进程、线程和调度--宋宝华" strategy="undefined" target="_blank">【直播】打通Linux脉络 进程、线程和调度--宋宝华</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/zhangzeyuaaa/article/details/42522015" title="Java 反射调用静态方法" strategy="BlogCommendFromBaidu_1" target="_blank">Java 反射调用静态方法</a>
</li>
<li>
<em>•</em>
<a href="http://edu.youkuaiyun.com/huiyiCourse/series_detail/62?utm_source=blog7" title="【直播】系统集成工程师必过冲刺--任铄" strategy="undefined" target="_blank">【直播】系统集成工程师必过冲刺--任铄</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/qq_34566601/article/details/74990357" title="运用反射时报错java.lang.NoSuchMethodException,以解决,记录一下" strategy="BlogCommendFromBaidu_2" target="_blank">运用反射时报错java.lang.NoSuchMethodException,以解决,记录一下</a>
</li>
<li>
<em>•</em>
<a href="http://edu.youkuaiyun.com/huiyiCourse/series_detail/61?utm_source=blog7" title="【直播】机器学习30天系统掌握--唐宇迪" strategy="undefined" target="_blank">【直播】机器学习30天系统掌握--唐宇迪</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/u010037124/article/details/38469981" title="使用反射时出现java.lang.NoSuchMethodException" strategy="BlogCommendFromBaidu_3" target="_blank">使用反射时出现java.lang.NoSuchMethodException</a>
</li>
<li>
<em>•</em>
<a href="http://edu.youkuaiyun.com/course/detail/458?utm_source=blog7" title="【课程】Oracle从入门到精通--文心" strategy="undefined" target="_blank">【课程】Oracle从入门到精通--文心</a>
</li>
</ul>
<ul class="similar_list fr">
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/yql44137228/article/details/38116175" title="利用反射函数实现一键清除缓存,并获取清除的缓存数目。调用反射函数类出错java.lang.NoSuchMethodException: getPackageSizeInfo." strategy="BlogCommendFromBaidu_4" target="_blank">利用反射函数实现一键清除缓存,并获取清除的缓存数目。调用反射函数类出错java.lang.NoSuchMethodException: getPackageSizeInfo.</a>
</li>
<li>
<em>•</em>
<a href="http://edu.youkuaiyun.com/course/detail/545?utm_source=blog7" title="【套餐】Android入门实战教程--巫文杰" strategy="undefined" target="_blank">【套餐】Android入门实战教程--巫文杰</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/bo_hai/article/details/6054356" title="java.lang.NoSuchMethodException 解决办法" strategy="BlogCommendFromBaidu_5" target="_blank">java.lang.NoSuchMethodException 解决办法</a>
</li>
<li>
<em>•</em>
<a href="http://edu.youkuaiyun.com/course/detail/474?utm_source=blog7" title="【课程】 C++语言基础 --贺利坚" strategy="undefined" target="_blank">【课程】 C++语言基础 --贺利坚</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/LawsonJin/article/details/52746130" title="java.lang.NoSuchMethodException异常解决" strategy="BlogCommendFromBaidu_6" target="_blank">java.lang.NoSuchMethodException异常解决</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/ichsonx/article/details/9081351" title="候捷谈Java反射机制" strategy="BlogCommendFromBaidu_7" target="_blank">候捷谈Java反射机制</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/qqJiny/article/details/52420389" title="JAVA反射调用无参构造、有参构造、普通方法、成员操作" strategy="BlogCommendFromBaidu_8" target="_blank">JAVA反射调用无参构造、有参构造、普通方法、成员操作</a>
</li>
<li>
<em>•</em>
<a href="http://blog.youkuaiyun.com/coolcoffee168/article/details/5835143" title="利用java反射机制对方法进行调用" strategy="BlogCommendFromBaidu_9" target="_blank">利用java反射机制对方法进行调用</a>
</li>
</ul>
</div>
</div>
</div>
</div>
<div>
<!-- 广告位:PC端-博客内容页-banner1-960*90 -->
<script>
(function() {
var s = "_" + Math.random().toString(36).slice(2);
document.write('<div id="' + s + '"></div>');
(window.slotbydup=window.slotbydup || []).push({
id: '4228013',
container: s,
size: '0,0',
display: 'inlay-fix'
});
})();
</script>
</div>
<div id="suggest"></div>
<script language="javascript" type='text/javascript'>
$(function(){
$.get("/ichsonx/svc/GetSuggestContent/9108173",function(data){
$("#suggest").html(data);
});
});
</script>
<!-- 广告位开始 -->
<!-- 广告位结束 -->
<div class="comment_class">
<div id="comment_title" class="panel_head">
<span class="see_comment">查看评论</span><a name="comments"></a></div>
<div id="comment_list">
</div>
<div id="comment_bar">
</div>
<div id="comment_form">
</div>
<div class="announce">
* 以上用户言论只代表其个人观点,不代表优快云网站的观点或立场<a name="reply"></a><a name="quote"></a></div>
</div>
<script type="text/javascript">
var fileName = '9108173';
var commentscount = 3;
var islock = false
</script>
<div id="ad_bot">
</div>
<div id="report_dialog">
</div>
<div id="d-top" style="bottom:60px;">
<a id="quick-reply" class="btn btn-top q-reply" title="快速回复" style="display:none;">
<img src="http://static.blog.youkuaiyun.com/images/blog-icon-reply.png" alt="快速回复">
</a>
<a id="d-top-a" class="btn btn-top backtop" style="display: none;" title="返回顶部" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_huidaodingbu'])" style="">
<img src="http://static.blog.youkuaiyun.com/images/top.png" alt="TOP">
</a>
</div>
<script type="text/javascript">
$(function ()
{
$("#ad_frm_0").height("90px");
setTimeout(function(){
$("#ad_frm_2").height("200px");
},1000);
});
</script>
<style type="text/css">
.tag_list
{
background: none repeat scroll 0 0 #FFFFFF;
border: 1px solid #D7CBC1;
color: #000000;
font-size: 12px;
line-height: 20px;
list-style: none outside none;
margin: 10px 2% 0 1%;
padding: 1px;
}
.tag_list h5
{
background: none repeat scroll 0 0 #E0DBD3;
color: #47381C;
font-size: 12px;
height: 24px;
line-height: 24px;
padding: 0 5px;
margin: 0;
}
.tag_list h5 a
{
color: #47381C;
}
.classify
{
margin: 10px 0;
padding: 4px 12px 8px;
}
.classify a
{
margin-right: 20px;
white-space: nowrap;
}
</style>
<div id="pop_win" style="display:none ;position: absolute; z-index: 10000; border: 1px solid rgb(220, 220, 220); top: 222.5px; left: 630px; opacity: 1; background: none 0px 0px repeat scroll rgb(255, 255, 255);">
</div>
<div id="popup_mask"></div>
<style>
#popup_mask
{
position: absolute;
width: 100%;
height: 100%;
background: #000;
z-index: 9999;
left: 0px;
top: 0px;
opacity: 0.3;
filter: alpha(opacity=30);
display: none;
}
</style>
<script type="text/javascript">
$(function(){
setTimeout(function(){
$(".comment_body:contains('回复')").each(function(index,item){
var u=$(this).text().split(':')[0].toString().replace("回复","")
var thisComment=$(this);
if(u)
{
$.getJSON("https://passport.youkuaiyun.com/get/nick?callback=?", {users: u}, function(a) {
if(a!=null&&a.data!=null&&a.data.length>0)
{
nick=a.data[0].n;
if(u!=nick)
{
thisComment.text(thisComment.text().replace(u,nick));
}
}
});
}
});
},200);
setTimeout(function(){
$(".math").each(function(index,value){$(this).find("span").last().css("color","#fff"); })
},5000);
setTimeout(function(){
$(".math").each(function(index,value){$(this).find("span").last().css("color","#fff"); })
},10000);
setTimeout(function(){
$(".math").each(function(index,value){$(this).find("span").last().css("color","#fff"); })
},15000);
setTimeout(function(){
$("a img[src='http://js.tongji.linezing.com/stats.gif']").parent().css({"position":"absolute","left":"50%"});
},300);
});
function loginbox(){
var $logpop=$("#pop_win");
$logpop.html('<iframe src="https://passport.youkuaiyun.com/account/loginbox?service=http://static.blog.youkuaiyun.com/callback.htm" frameborder="0" height="600" width="400" scrolling="no"></iframe>');
$('#popup_mask').css({
opacity: 0.5,
width: $( document ).width() + 'px',
height: $( document ).height() + 'px'
});
$('#popup_mask').css("display","block");
$logpop.css( {
top: ($( window ).height() - $logpop.height())/ 2 + $( window
).scrollTop() + 'px',
left:($( window ).width() - $logpop.width())/ 2
} );
setTimeout( function () {
$logpop.show();
$logpop.css( {
opacity: 1
} );
}, 200 );
$('#popup_mask').unbind("click");
$('#popup_mask').bind("click", function(){
$('#popup_mask').hide();
var $clopop = $("#pop_win");
$("#common_ask_div_sc").css("display","none");
$clopop.css( {
opacity: 0
} );
setTimeout( function () {
$clopop.hide();
}, 350 );
return false;
});
}
var articletitle='通过Java反射调用方法';
</script>
<div class="clear">
</div>
</div>
</div>
<div id="side">
<div class="side">
<div id="panel_Profile" class="panel">
<ul class="panel_head"><span>个人资料</span></ul>
<ul class="panel_body profile">
<div id="blog_userface">
<a href="http://my.youkuaiyun.com/ichsonx" target="_blank">
<img src="http://avatar.youkuaiyun.com/1/5/5/1_ichsonx.jpg" title="访问我的空间" style="max-width:90%"/>
</a>
<br />
<span><a href="http://my.youkuaiyun.com/ichsonx" class="user_name" target="_blank">ichsonx</a></span>
</div>
<div class="interact">
<a href="javascript:void(0);" class="attent" id="span_add_follow" title="[加关注]"></a>
<a href="javascript:void(0);" class="letter" title="[发私信]" οnclick="window.open('http://msg.youkuaiyun.com/letters/model?receiver=ichsonx','_blank','height=350,width=700');_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_sixin'])"></a>
</div>
<div id="blog_medal">
<div id="bms_box">
<a target="_blank">
<img src="http://c.csdnimg.cn/jifen/images/xunzhang/xunzhang/chizhiyiheng.png" οnmοuseοver="m_over_m(this,4)" οnmοuseοut="m_out_m()" alt="1" >
</a>
</div>
</div>
<ul id="blog_rank">
<li>访问:<span>799787次</span></li>
<li>积分:<span>7469</span> </li>
<li >等级: <span style="position:relative;display:inline-block;z-index:1" >
<img src="http://c.csdnimg.cn/jifen/images/xunzhang/jianzhang/blog6.png" alt="" style="vertical-align: middle;" id="leveImg">
<div id="smallTittle" style=" position: absolute; left: -24px; top: 25px; text-align: center; width: 101px; height: 32px; background-color: #fff; line-height: 32px; border: 2px #DDDDDD solid; box-shadow: 0px 2px 2px rgba (0,0,0,0.1); display: none; z-index: 999;">
<div style="left: 42%; top: -8px; position: absolute; width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 8px solid #EAEAEA;"></div>
积分:7469 </div>
</span> </li>
<li>排名:<span>第2943名</span></li>
</ul>
<ul id="blog_statistics">
<li>原创:<span>75篇</span></li>
<li>转载:<span>232篇</span></li>
<li>译文:<span>0篇</span></li>
<li>评论:<span>105条</span></li>
</ul>
</ul>
</div>
<div class="panel" id="panel_Search">
<ul class="panel_head"><span>文章搜索</span></ul>
<ul class="panel_body" class="form_search">
<form id="frmSearch" action="http://so.youkuaiyun.com/search" class="form_search csdn-tracking-statistics" target="_blank" data-mod="popu_306">
<span><input id="inputSearch" type="text" class="blogsearch" title="请输入关键字" /></span>
<input id="btnSubmit" type="button" value="搜索" title="search in blog" />
<input type="hidden" name="q" id="inputQ" />
<input type="hidden" name="t" value="blog" />
<a id="btnSearchBlog" target="_blank"></a>
</form>
</ul>
</div>
<script type="text/javascript">
$(function () {
$("#btnSubmit").unbind("click");
$("#btnSubmit").click(function () {
search();
});
$("#frmSearch").submit(function () {
search();
return false;
});
function search()
{
if ($("#inputSearch").val() == "") {
alert("请录入搜索关键词!");
return false;
}
//var url = "http://so.youkuaiyun.com/so/search/s.do?q=" + encodeURIComponent($("#inputSearch").val()) + "&u=" + username + "&t=blog";
var url = "https://www.baidu.com/s?wd=" + encodeURIComponent($("#inputSearch").val()) + "%20site%3Ablog.youkuaiyun.com"
window.location.href = url;
}
});
</script><div id="panel_Category" class="panel">
<ul class="panel_head"><span>文章分类</span></ul>
<ul class="panel_body">
<li>
<a href="/ichsonx/article/category/331417" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">CSS</a><span>(2)</span>
</li>
<li>
<a href="/ichsonx/article/category/542592" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">Hibernate</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/331416" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">JAVA</a><span>(52)</span>
</li>
<li>
<a href="/ichsonx/article/category/331385" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">J2ME</a><span>(2)</span>
</li>
<li>
<a href="/ichsonx/article/category/331422" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">JAVASCRIPT</a><span>(9)</span>
</li>
<li>
<a href="/ichsonx/article/category/726126" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">linux</a><span>(71)</span>
</li>
<li>
<a href="/ichsonx/article/category/832085" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">Python</a><span>(7)</span>
</li>
<li>
<a href="/ichsonx/article/category/478653" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">Servers</a><span>(19)</span>
</li>
<li>
<a href="/ichsonx/article/category/542593" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">Spring</a><span>(19)</span>
</li>
<li>
<a href="/ichsonx/article/category/465024" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">struts2.x</a><span>(4)</span>
</li>
<li>
<a href="/ichsonx/article/category/533877" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">公司每日记事</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/331420" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">喜欢乱贴</a><span>(5)</span>
</li>
<li>
<a href="/ichsonx/article/category/570998" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">模式</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/333317" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">系统技术</a><span>(8)</span>
</li>
<li>
<a href="/ichsonx/article/category/922780" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">android</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/953301" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">web service</a><span>(1)</span>
</li>
<li>
<a href="/ichsonx/article/category/1180889" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">C++</a><span>(9)</span>
</li>
<li>
<a href="/ichsonx/article/category/1211036" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">MyBatis</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/1344505" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">C#</a><span>(1)</span>
</li>
<li>
<a href="/ichsonx/article/category/1354378" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">GIT</a><span>(12)</span>
</li>
<li>
<a href="/ichsonx/article/category/1359661" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">MAVEN</a><span>(14)</span>
</li>
<li>
<a href="/ichsonx/article/category/1374346" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">GO</a><span>(1)</span>
</li>
<li>
<a href="/ichsonx/article/category/1393940" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">感兴趣新闻</a><span>(5)</span>
</li>
<li>
<a href="/ichsonx/article/category/1505589" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">ubuntu</a><span>(36)</span>
</li>
<li>
<a href="/ichsonx/article/category/1735651" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">依赖管理/仓库</a><span>(2)</span>
</li>
<li>
<a href="/ichsonx/article/category/1735721" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">大数据</a><span>(12)</span>
</li>
<li>
<a href="/ichsonx/article/category/2519079" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">redis</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/2519081" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">zookeeper</a><span>(1)</span>
</li>
<li>
<a href="/ichsonx/article/category/2519089" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">nginx</a><span>(1)</span>
</li>
<li>
<a href="/ichsonx/article/category/2535307" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">dubbo</a><span>(5)</span>
</li>
<li>
<a href="/ichsonx/article/category/2622719" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">centOS</a><span>(9)</span>
</li>
<li>
<a href="/ichsonx/article/category/2654269" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">CW_YI</a><span>(4)</span>
</li>
<li>
<a href="/ichsonx/article/category/2699731" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">scala</a><span>(6)</span>
</li>
<li>
<a href="/ichsonx/article/category/2699957" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">日常运用</a><span>(5)</span>
</li>
<li>
<a href="/ichsonx/article/category/2704825" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">前端</a><span>(6)</span>
</li>
<li>
<a href="/ichsonx/article/category/2783871" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">intellij</a><span>(11)</span>
</li>
<li>
<a href="/ichsonx/article/category/2790363" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">log4j2</a><span>(2)</span>
</li>
<li>
<a href="/ichsonx/article/category/2889857" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">docker</a><span>(2)</span>
</li>
<li>
<a href="/ichsonx/article/category/3041537" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">要FINISH的!!!</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/3041543" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">Spark</a><span>(5)</span>
</li>
<li>
<a href="/ichsonx/article/category/5688421" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">UML</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/category/6335016" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">spring boot</a><span>(4)</span>
</li>
<li>
<a href="/ichsonx/article/category/6348013" οnclick="_gaq.push(['_trackEvent','function', 'onclick', 'blog_articles_wenzhangfenlei']); ">AKKA</a><span>(3)</span>
</li>
</ul>
</div><div id="panel_Archive" class="panel">
<ul class="panel_head"><span>文章存档</span></ul>
<ul class="panel_body">
<div id="archive_list">
<!--归档统计-->
<li><a href="/ichsonx/article/month/2016/10">2016年10月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2016/09">2016年09月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2016/08">2016年08月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2016/07">2016年07月</a><span>(6)</span></li><li><a href="/ichsonx/article/month/2015/11">2015年11月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2015/10">2015年10月</a><span>(13)</span></li><li><a href="/ichsonx/article/month/2015/09">2015年09月</a><span>(8)</span></li><li><a href="/ichsonx/article/month/2015/08">2015年08月</a><span>(11)</span></li><li><a href="/ichsonx/article/month/2015/07">2015年07月</a><span>(8)</span></li><li><a href="/ichsonx/article/month/2015/03">2015年03月</a><span>(5)</span></li><li><a href="/ichsonx/article/month/2015/02">2015年02月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2015/01">2015年01月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2014/12">2014年12月</a><span>(16)</span></li><li><a href="/ichsonx/article/month/2014/11">2014年11月</a><span>(17)</span></li><li><a href="/ichsonx/article/month/2014/10">2014年10月</a><span>(19)</span></li><li><a href="/ichsonx/article/month/2014/09">2014年09月</a><span>(20)</span></li><li><a href="/ichsonx/article/month/2014/08">2014年08月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2014/06">2014年06月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2014/03">2014年03月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2013/11">2013年11月</a><span>(5)</span></li><li><a href="/ichsonx/article/month/2013/07">2013年07月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2013/06">2013年06月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2013/05">2013年05月</a><span>(7)</span></li><li><a href="/ichsonx/article/month/2013/04">2013年04月</a><span>(14)</span></li><li><a href="/ichsonx/article/month/2013/03">2013年03月</a><span>(8)</span></li><li><a href="/ichsonx/article/month/2013/02">2013年02月</a><span>(5)</span></li><li><a href="/ichsonx/article/month/2013/01">2013年01月</a><span>(7)</span></li><li><a href="/ichsonx/article/month/2012/09">2012年09月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2012/08">2012年08月</a><span>(5)</span></li><li><a href="/ichsonx/article/month/2012/07">2012年07月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2012/06">2012年06月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2012/05">2012年05月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2011/12">2011年12月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2011/11">2011年11月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2011/10">2011年10月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2011/09">2011年09月</a><span>(7)</span></li><li><a href="/ichsonx/article/month/2011/08">2011年08月</a><span>(3)</span></li><li><a href="/ichsonx/article/month/2011/07">2011年07月</a><span>(3)</span></li><li><a href="/ichsonx/article/month/2011/06">2011年06月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2011/05">2011年05月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2011/04">2011年04月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2011/03">2011年03月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2010/11">2010年11月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2010/09">2010年09月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2010/08">2010年08月</a><span>(9)</span></li><li><a href="/ichsonx/article/month/2010/07">2010年07月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2010/05">2010年05月</a><span>(7)</span></li><li><a href="/ichsonx/article/month/2010/03">2010年03月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2010/01">2010年01月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2009/09">2009年09月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2009/07">2009年07月</a><span>(3)</span></li><li><a href="/ichsonx/article/month/2009/05">2009年05月</a><span>(3)</span></li><li><a href="/ichsonx/article/month/2009/04">2009年04月</a><span>(5)</span></li><li><a href="/ichsonx/article/month/2009/02">2009年02月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2008/10">2008年10月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2008/09">2008年09月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2008/07">2008年07月</a><span>(1)</span></li><li><a href="/ichsonx/article/month/2008/02">2008年02月</a><span>(4)</span></li><li><a href="/ichsonx/article/month/2007/10">2007年10月</a><span>(2)</span></li><li><a href="/ichsonx/article/month/2007/09">2007年09月</a><span>(23)</span></li><li><a href="/ichsonx/article/month/2007/08">2007年08月</a><span>(1)</span></li>
</div>
</ul>
</div>
<div id="hotarticls" class="panel tracking-ad" data-mod="popu_340">
<ul class="panel_head">
<span>
阅读排行 </span>
</ul>
<ul class="panel_body itemlist">
<li>
<a href="/ichsonx/article/details/9108173" title="通过Java反射调用方法">通过Java反射调用方法</a><span>(93872)</span>
</li>
<li>
<a href="/ichsonx/article/details/2954397" title="struts2核心工作流程与原理">struts2核心工作流程与原理</a><span>(48705)</span>
</li>
<li>
<a href="/ichsonx/article/details/14642897" title="Sonatype Nexus 搭建Maven 私服">Sonatype Nexus 搭建Maven 私服</a><span>(25551)</span>
</li>
<li>
<a href="/ichsonx/article/details/9148497" title="更改eclipse的编辑器样式风格">更改eclipse的编辑器样式风格</a><span>(25339)</span>
</li>
<li>
<a href="/ichsonx/article/details/39008519" title="Dubbo是什么">Dubbo是什么</a><span>(23374)</span>
</li>
<li>
<a href="/ichsonx/article/details/8518420" title="YUM更换源(1)--yum找不到安装包">YUM更换源(1)--yum找不到安装包</a><span>(20367)</span>
</li>
<li>
<a href="/ichsonx/article/details/39008541" title="dubbo(provider,consumer)点到点直连配置">dubbo(provider,consumer)点到点直连配置</a><span>(18067)</span>
</li>
<li>
<a href="/ichsonx/article/details/6911358" title="tomcat使用memcached完成集群">tomcat使用memcached完成集群</a><span>(18000)</span>
</li>
<li>
<a href="/ichsonx/article/details/40040935" title="Ubuntu Server 12.04(14.04) 静态IP简洁配置">Ubuntu Server 12.04(14.04) 静态IP简洁配置</a><span>(17033)</span>
</li>
<li>
<a href="/ichsonx/article/details/8625925" title="一步步使用GIT">一步步使用GIT</a><span>(15725)</span>
</li>
</ul>
</div>
<div id="hotarticls2" class="panel tracking-ad" data-mod="popu_341">
<ul class="panel_head"><span>评论排行</span></ul>
<ul class="panel_body itemlist">
<li>
<a href="/ichsonx/article/details/2954397" title="struts2核心工作流程与原理">struts2核心工作流程与原理</a><span>(14)</span>
</li>
<li>
<a href="/ichsonx/article/details/5598865" title="struts2.1.8+spring3.0.2+hibernate3.3">struts2.1.8+spring3.0.2+hibernate3.3</a><span>(10)</span>
</li>
<li>
<a href="/ichsonx/article/details/39008519" title="Dubbo是什么">Dubbo是什么</a><span>(9)</span>
</li>
<li>
<a href="/ichsonx/article/details/8802765" title="使用maven生成java项目">使用maven生成java项目</a><span>(6)</span>
</li>
<li>
<a href="/ichsonx/article/details/4372930" title="FLEX3+struts2.1.6+spring2.5.5+hibernate3.2整合日记(1)">FLEX3+struts2.1.6+spring2.5.5+hibernate3.2整合日记(1)</a><span>(6)</span>
</li>
<li>
<a href="/ichsonx/article/details/6911358" title="tomcat使用memcached完成集群">tomcat使用memcached完成集群</a><span>(5)</span>
</li>
<li>
<a href="/ichsonx/article/details/40385737" title="让Ubuntu 14.04“保存”屏幕亮度值">让Ubuntu 14.04“保存”屏幕亮度值</a><span>(5)</span>
</li>
<li>
<a href="/ichsonx/article/details/5337511" title="ConcurrentHashmap使用">ConcurrentHashmap使用</a><span>(4)</span>
</li>
<li>
<a href="/ichsonx/article/details/9108173" title="通过Java反射调用方法">通过Java反射调用方法</a><span>(3)</span>
</li>
<li>
<a href="/ichsonx/article/details/6405969" title="Neo4j 随笔">Neo4j 随笔</a><span>(3)</span>
</li>
</ul>
</div>
<div id="homepageArticles" class="panel tracking-ad" data-mod="popu_4">
<ul class="panel_head"><span>推荐文章</span></ul>
<ul class="panel_body" id="ad_commend">
<ul>
<li><a href="http://blog.youkuaiyun.com/blogdevteam/article/details/77651442" target="_blank">* 优快云日报20170828——《4个方法快速打造你的阅读清单》</a></li>
<li><a href="http://blog.youkuaiyun.com/blogdevteam/article/details/77647813"
target="_blank">* 优快云博客模板调查问卷</a></li>
<li><a href="http://blog.youkuaiyun.com/yhaolpz/article/details/77366154"target="_blank">* 动手打造史上最简单的 Recycleview 侧滑菜单</a></li>
<li><a href="http://blog.youkuaiyun.com/sweettool/article/details/77018506"
target="_blank">* TCP网络通讯如何解决分包粘包问题</a></li>
<li><a href="http://blog.youkuaiyun.com/dc_726/article/details/77728729"
target="_blank">* 程序员的八重境界</a></li>
<li><a href="http://blog.youkuaiyun.com/pangpang123654/article/details/77720036"
target="_blank">* 四大线程池详解
</a></li>
</ul></ul>
</div>
<div id="newcomments" class="panel">
<ul class="panel_head"><span>最新评论</span></ul>
<ul class="panel_body itemlist">
<li>
<a href="/ichsonx/article/details/9108173#comments">通过Java反射调用方法</a>
<p style="margin:0px;"><a href="/u013795543" class="user_name">u013795543</a>:
学习了
</p>
</li>
<li>
<a href="/ichsonx/article/details/39008519#comments">Dubbo是什么</a>
<p style="margin:0px;"><a href="/u012323351" class="user_name">u012323351</a>:
初学者很好的教程谢谢楼主分享
</p>
</li>
<li>
<a href="/ichsonx/article/details/39008519#comments">Dubbo是什么</a>
<p style="margin:0px;"><a href="/u013047584" class="user_name">u013047584</a>:
不错,宏观留一遍。
</p>
</li>
<li>
<a href="/ichsonx/article/details/39008519#comments">Dubbo是什么</a>
<p style="margin:0px;"><a href="/u013046597" class="user_name">u013046597</a>:
很好
</p>
</li>
<li>
<a href="/ichsonx/article/details/39008519#comments">Dubbo是什么</a>
<p style="margin:0px;"><a href="/qqxyy99" class="user_name">qqxyy99</a>:
敏捷测试团队,不再仅仅是在coding之后。而是和研发人员贯穿在需求分析、规格说明、自动化单元测试、...
</p>
</li>
<li>
<a href="/ichsonx/article/details/40385737#comments">让Ubuntu 14.04“保存”屏幕亮度值</a>
<p style="margin:0px;"><a href="/dingmlp" class="user_name">dingmlp</a>:
@ichsonx:1)在exit 0 前面添加设置;2)查看当前设置亮度:sudo cat /sys...
</p>
</li>
<li>
<a href="/ichsonx/article/details/6667947#comments">Omni-NFS-X Windows与Linux间通讯的另一种方式</a>
<p style="margin:0px;"><a href="/YIDI520206" class="user_name">YIDI520206</a>:
有人能成功吗?一直连不上用这个
</p>
</li>
<li>
<a href="/ichsonx/article/details/7699093#comments">ContextLoaderListener与DispatcherServlet所加载的applicationContext的区别</a>
<p style="margin:0px;"><a href="/xyjincan" class="user_name">xyjincan</a>:
upup
</p>
</li>
<li>
<a href="/ichsonx/article/details/2954397#comments">struts2核心工作流程与原理</a>
<p style="margin:0px;"><a href="/cd18333612683" class="user_name">cd18333612683</a>:
学习了,最近正在学习有关知识
</p>
</li>
<li>
<a href="/ichsonx/article/details/2954397#comments">Dubbo是什么</a>
<p style="margin:0px;"><a href="/chq00788" class="user_name">chq00788</a>:
不错,简单易懂,感谢楼主,学习了
</p>
</li>
</ul>
</div>
</div>
<div class="clear">
</div>
<!-- 广告位开始 --> <!-- 广告位结束 -->
<div class="tracking-ad" data-view="true" data-mtp="63" data-order="40" data-con="ad_content_1260" style="width: 200px; height: 500px;">
<div id="nav_show_top_stop" style="width: 200px;height: 500px;z-index:1000"><div id="cpro_u2734128"></div>
<div id="cpro_u3031287"></div></div>
</div>
<script type="text/javascript">
setTimeout(function () {
var naviga_offsetTop = 0;
function naviga_stay_top() { var scrollTop = jQuery(document).scrollTop(); if (scrollTop > naviga_offsetTop) { jQuery("#nav_show_top_stop").css({ "position": "fixed" }); jQuery("#nav_show_top_stop").css({ "top": "0px" }); } else { jQuery("#nav_show_top_stop").css({ "position": "fixed" }); jQuery("#nav_show_top_stop").css({ "top": naviga_offsetTop - scrollTop + "px" }); } }
function onload_function() { naviga_offsetTop = jQuery("#nav_show_top_stop").position().top; jQuery(window).bind("scroll", naviga_stay_top); jQuery(window).bind("mousewheel", naviga_stay_top); jQuery(document).bind("scroll", naviga_stay_top); jQuery(document).bind("mousewheel", naviga_stay_top); } jQuery(document).ready(onload_function);
}, 200);
</script>
<script type="text/javascript">(window.cproArray = window.cproArray || []).push({ id: "u2734128" }); </script>
<script src="http://cpro.baidustatic.com/cpro/ui/c.js" type="text/javascript"></script>
<script type="text/javascript">
/*PC端-博客内容页左侧Button2-200*200-2017/7/10*/
(window.cproArray = window.cproArray || []).push({ id: "u3031287" });
</script>
<script type="text/javascript" src="http://cpro.baidustatic.com/cpro/ui/c.js"></script>
</div>
<div class="clear">
</div>
</div>
<script type="text/javascript" src="http://passport.youkuaiyun.com/content/loginbox/login.js"></script>
<script type="text/javascript">
$(function () {
function __get_code_toolbar(snippet_id) {
return $("<span class='tracking-ad' data-mod='popu_167'><a href='https://code.youkuaiyun.com/snippets/"
+ snippet_id
+ "' target='_blank' title='在CODE上查看代码片' style='text-indent:0;'><img src='https://code.youkuaiyun.com/assets/CODE_ico.png' width=12 height=12 alt='在CODE上查看代码片' style='position:relative;top:1px;left:2px;'/></a></span>"
+ "<span class='tracking-ad' data-mod='popu_170'><a href='https://code.youkuaiyun.com/snippets/"
+ snippet_id
+ "/fork' target='_blank' title='派生到我的代码片' style='text-indent:0;'><img src='https://code.youkuaiyun.com/assets/ico_fork.svg' width=12 height=12 alt='派生到我的代码片' style='position:relative;top:2px;left:2px;'/></a></span>");
}
$("[code_snippet_id]").each(function () {
__s_id = $(this).attr("code_snippet_id");
if (__s_id != null && __s_id != "" && __s_id != 0 && parseInt(__s_id) > 70020) {
__code_tool = __get_code_toolbar(__s_id);
$(this).prev().find(".tools").append(__code_tool);
}
});
$(".bar").show();
});
</script>
</div>
<!--new top-->
<!--new top-->
<script type="text/javascript" src="http://static.blog.youkuaiyun.com/public/res/bower-libs/MathJax/MathJax.js?config=TeX-AMS_HTML"></script>
<script type="text/javascript">
//$(function () {
// setTimeout(function () {
// var searchtitletags = articletitle + ',' + $("#tags").html();
// searchService({
// index: 'blog',
// query: searchtitletags,
// from: 5,
// size: 5,
// appendTo: '#res',
// url: 'recommend',
// his: 2,
// client: "blog_cf_enhance",
// tmpl: '<dd style="background:url(http://static.blog.youkuaiyun.com/skin/default/images/blog-dot-red3.gif) no-repeat 0 10px;"><a href="#{ url }" title="#{ title }" strategy="#{ strategy }">#{ title }</a></dd>'
// });
// }, 1000);
//});
</script>
<script src="http://static.blog.youkuaiyun.com/scripts/csdn_blog_detail.min.js" type="text/javascript"></script>
<script type="text/javascript" src="http://c.csdnimg.cn/blog/csdn_public_blog_detail.min.js?20170719001"></script>
<script type="text/javascript" src="http://medal.blog.youkuaiyun.com/showblogmedal.ashx?blogid=239583"></script>
<div id="a52b5334d" style="width: 1px; height: 1px; display: none;">
<script id="adJs52b5334"></script>
<script>document.getElementById("adJs52b5334").src = "http://ads.youkuaiyun.com/js/opt/52b5334.js?t=" + Math.random();</script>
</div>
<div class="pop_CA_cover" style="display:none"></div>
<div class="pop pop_CA" style="display:none">
<div class="CA_header">
收藏助手
<span class="cancel_icon" id="fapancle" οnclick="$('.pop_CA').hide();$('.pop_CA_cover').hide();"></span>
</div>
<iframe src="" id="fa" frameborder="0" width="100%" height="360" scrolling="no" ></iframe>
</div>
<script type="text/javascript">
$(function () {
var fromjs = $("#fromjs");
if (fromjs.length > 0) {
$("#fromjs .markdown_views pre").addClass("prettyprint");
prettyPrint();
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
$('.pre-numbering li').css("color", "#999");
}
});
$(".markdown_views a[target!='_blank']").attr("target", "_blank");
//$(".toc a[target='_blank']").attr("target", "");
setTimeout(function () {
$(".toc a[target='_blank']").attr("target", "");
}, 500);
</script>
</body>
</html>