gpt4 book ai didi

java问题来决定谁调用了这个方法

转载 作者:行者123 更新时间:2023-12-01 06:41:21 24 4
gpt4 key购买 nike

我有以下场景 testOne() 和 testTwo 都调用相同的 callMe() 方法。

How do I decide inside callMe() method who called callMe().

public void testOne(){
callMe();
}

public void testTwo(){
callMe();
}

public void callMe(){
System.out.println("I was called by following method."+methodName);

}


Any sort of help is appreciated.

最佳答案

任何让您生成堆栈跟踪并查看第二帧的解决方案都会导致痛苦 - 您本质上所做的就是绕过将函数所需的内容传递给它的想法,以便函数能够做好工作。

如果您需要调用方方法的名称,则只需将其作为参数传递。如果您需要一些其他数据来决定在 callMe() 方法中做什么,请将其传递(作为 booleanint、等)。

这会让处理您代码的其他开发人员感到困惑,为什么 callMe() 具有本质上是 secret 的参数。

public void testOne(){
callMe("testOne");
}

public void testTwo(){
callMe("testTwo");
}

public void callMe(String methodName){
System.out.println("I was called by following method."+methodName);
}

关于java问题来决定谁调用了这个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6781049/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com