jshell 选项卡完成非实例方法

jshell tab completion non-instance methods

新的 Java shell、jshell 允许制表符补全,它显示了 class 的给定实例可用的所有方法。例如,如果我这样做...

jshell> Integer myInt = 3
myInt ==> 3

jshell> myInt. <<< + TAB >>>
byteValue()     compareTo(      doubleValue()   equals(         floatValue()   
getClass()      hashCode()      intValue()      longValue()     notify()       
notifyAll()     shortValue()    toString()      wait(

...我看到了 Integer 对象可用的所有方法。如何查看整个 class 可用的方法和变量,而不仅仅是 class 的一个实例?

实例 of Integer 将只显示实例变量和方法[ Oracle ]:

jshell> Integer j = new Integer(3)
j ==> 3

jshell> j.
byteValue()     compareTo(      doubleValue()   equals(         floatValue()   
getClass()      hashCode()      intValue()      longValue()     notify()       
notifyAll()     shortValue()    toString()      wait(

...虽然可以通过简单地避免创建实例来看到非实例方法和变量:

jshell> Integer.
BYTES                    MAX_VALUE                MIN_VALUE                SIZE
TYPE                     bitCount(                class                    compare(
compareUnsigned(         decode(                  divideUnsigned(          getInteger(
hashCode(                highestOneBit(           lowestOneBit(            max(
min(                     numberOfLeadingZeros(    numberOfTrailingZeros(   parseInt(
parseUnsignedInt(        remainderUnsigned(       reverse(                 reverseBytes(
rotateLeft(              rotateRight(             signum(                  sum(
toBinaryString(          toHexString(             toOctalString(           toString(
toUnsignedLong(          toUnsignedString(        valueOf(