惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
爱范儿
爱范儿
Vercel News
Vercel News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Martin Fowler
Martin Fowler
博客园 - 司徒正美
大猫的无限游戏
大猫的无限游戏
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
Blog — PlanetScale
Blog — PlanetScale
博客园 - 【当耐特】
人人都是产品经理
人人都是产品经理
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky
T
The Blog of Author Tim Ferriss
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google DeepMind News
Google DeepMind News
H
Help Net Security
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
G
Google Developers Blog

博客园 - 震

一些关于数据库的问题 使用ORACLE和MYSQL的简单心得 出来混总有一天要还的 Java中的访问修饰符 Java中的static、final、this、super xslt学习简单笔记 XML schema学习笔记 DOM中对象的方法(转贴) 学习JavaScript的开源好东东 关于CSS中的一些问题 - 震 - 博客园 web标准的悄然袭来 替换字符性能测试 在JAVA中调用外部可执行程序 - 震 - 博客园 一小练习 - 震 - 博客园 Java中的String类和StringBuffer类 将Java对象转为String的几种方法剖析(转贴) java 中的随机数用法 两种特殊的Java容器类List和Set分析[转贴] java.util.list初体验
关于反射中方法指针中我遇到的问题
· 2006-08-15 · via 博客园 - 震

        今天学习反射的时候有头大了,很多人都说反射是JAVA的核心,但是真正讲核心的书籍是少之又少,连CORE JAVA里面也只是寥寥的几笔。
        主要是这样的:我有一个类里面有个getTitle的方法,我现在要写个类用反射技术来调用这个对象。CORE JAVA中把他叫为方法指针。这里面最关键的也就是invoke方法,他里面有二个参数,第一个参数是你要在哪个对象上调用该方法,第二个参数是你要给这个方法传递的参数值 。我先是这么写的String i = (String)field.invoke(cls,null),JVM提示未找到对象,我一直都没搞清楚这是为什么。后来想到了应该要new个对象,但是new 个对象就失去这个程序的意义了,后来想到反射中的newInstance,基本上程序就OVER了,这个程序很简单,只是我迈开反射学习的第一步。

import java.lang.reflect.*;
import java.awt.Dimension;
public class RefTest {

   
public static void main(String args[]) {
       
       String classname 
= "View";//类名
       String methodname ="getTitle";//类中方法名
       try {
           Class cls 
= Class.forName(classname);
          Method  method 
= cls.getMethod(methodname) ;
           
           String i 
= (String)method.invoke(cls.newInstance(),null);

              System.out.println(i);
          
           }

       
catch (Throwable e) {
          System.err.println(e);
       }

       

   }

}

classname和methodname放到XML文件中就更直观了。