Java:何时创建* any *类的监听器?

时间:2013-06-01 22:02:40

标签: java class constructor runtime listener

我希望在创建任何类时收到通知。

例如,我想设置一个类似以下伪代码的监听器:

addListener("onAnyClassCreated", myCallback);

public void function myCallback(Object obj)
{
  trace("obj was just created:" + obj.toString());
}

然后对于由我的应用程序的JVM创建的任何类,将调用上面的“myCallback”函数。我可以为自己的代码管理这个,但是我希望它可以与我正在使用的任何第三方库一起使用。

2 个答案:

答案 0 :(得分:1)

您可能希望使用分析来计算某个类的实例,或者如果您真的想要执行您所描述的内容,可以使用某些检测工具来完成。例如Byteman

答案 1 :(得分:0)

我认为你想要实现的目标可以通过远程监督你的JVM来完成。一种经典的方法是使用Java Management Extensions (JMX)

您可以使用现有的JMX客户端,例如JConsoleVisualVM。如果您有特殊需求,也可以创建自己的。