Groovy初学者,来自Java / Kotlin,我如何获得班级(匿名)实现的班级名称?
尝试失败:
abstract class Foo {
String name() { this.class.simpleName }
}
abstract class Foo {
String name() { return this.class.simpleName }
}
abstract class Foo {
String name() { return getClass().getSimpleName() }
}
abstract class Foo {
String name() { this.metaClass.classNode.nameWithoutPackage }
}
所以显然我似乎给了一些类实例一个默认名称。我想"好吧,如果班级名称不起作用,让我们尝试个人命名"有了这个:
abstract class Foo {
private final AtomicInteger counter = new AtomicInteger(0)
String name() { "number " + this.counter.incrementAndGet() }
}
但这不起作用,因为counter is not a property of groovy.lang.Binding
。
这是我尝试写的Jenkins管道的上下文......为什么这么难?
答案 0 :(得分:1)
你可能想要这个......
abstract class Foo {
String name() { this.class.name }
}