请问利用Java反射实现一个类中的接口是如何实现的呢?

 我来答
iwlyx
2012-09-26 · TA获得超过4825个赞
知道大有可为答主
回答量:5599
采纳率:50%
帮助的人:4782万
展开全部
在理解反射的时候,不得不说一下内存。
先理解一下JVM的三个区:堆区,栈区,和方法去(静态区)。
堆区:存放所有的对象,每个对象都有一个与其对应的class信息。在JVM中只有一个堆区,堆区被所有的线程共享。
栈区:存放所有基础数据类型的对象和所有自定义对象的引用,每个线程包含一个栈区。每个栈区中的数据都是私有的,其他栈不能访问。
栈分为三部分:
基本类型变量区、执行环境上下文、操作指令区(存放操作指令)。
方法区:即静态区,被所有的线程共享。方法区包含所有的class和static变量。它们都是唯一的。

在启动一个java虚拟机时,虚拟机要加载你程序里所用到的类 ,这个进程会首先跑到jdk中(在jdk的jre/lib/ext文件夹里找那些jar文件),如果没有找到,会去classpath里设置的路径去找。
在找到要执行的类时:
1.首先将找到的类的信息加载到运行时数据区的方法区。这个过程叫做类的加载。所以一下static类型的在类的加载过程中就已经放到了方法区。所以不用实例化就能用一个static类型的方法。
2.加载完成后,在new一个类时,首先就是去方法区看看有没有这个类的信息。如果没有这个类的信息,先装载这个类。then,加载完成后,会在堆区为new的这个类分配内存,有了内存就有了实例,而这个实例指向的是方法区的该类信息。其实就是存放了在方法区的地址。而反射就是利用了这一点。
jy03078584
2012-09-26 · TA获得超过471个赞
知道小有建树答主
回答量:444
采纳率:0%
帮助的人:269万
展开全部
不太懂哦 类中的接口是什么意思呢 是说这个类实现的这个接口吗
追问
就是一个内部类,这个内部类是一个接口
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式