gpt4 book ai didi

java - 为什么 jshell 使用 StackWalker 返回空字符串

转载 作者:行者123 更新时间:2023-12-02 09:16:39 25 4
gpt4 key购买 nike

这是一个错误吗?我至少期望出现异常而不是空字符串:

jshell> ((Supplier<String>)(()->StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE).getCallerClass().getName())).get()+"invisible";
$1 ==> ""

使用jshell 13.0.1

最佳答案

我没有解释,但这似乎是由于 shell 反馈的一些奇怪行为造成的。

jshell> String a = ((Supplier<String>)(() -> StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE).getCallerClass().getName())).get();
a ==> ""

jshell> System.out.println(a);
REPL.$JShell$11

jshell> "$JShell$foobar"
$3 ==> ""

JShell 似乎以某种方式解释字符串 $Jshell$...,但字符串本身就很好。

关于java - 为什么 jshell 使用 StackWalker 返回空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58932301/

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