【问题标题】:jshell tab completion non-instance methodsjshell选项卡完成非实例方法
【发布时间】:2018-01-15 17:09:10
【问题描述】:

新的 Java shell,jshell,允许 tab 补全,显示类的给定实例可用的所有方法。例如,如果我这样做...

jshell> Integer myInt = 3
myInt ==> 3

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

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

【问题讨论】:

  • 但是所有继承方法的列表显示在单个选项卡上(我看到方法继承自 Object 和 Number)。还是您正在寻找它在单个选项卡上显示声明的方法并在双选项卡上显示继承的方法?
  • 不适合我。上面列出的那些看起来只是“实例方法”[docs.oracle.com/javase/9/docs/api/?java/lang/Integer.html]。你看到了什么方法,欧内斯特?另外,无论谁投了反对票,请解释这个问题有什么问题。

标签: java tab-completion jshell


【解决方案1】:

Integerinstance 只会显示实例变量和方法 [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(

【讨论】:

  • 您的第二个屏幕截图显示了类方法,而第一个屏幕截图显示了实例方法。第二个不是第一个的超集,因为它不显示任何实例方法。
  • 感谢@DodgyCodeException。更改了文本以反映这一点。
猜你喜欢
  • 2013-06-16
  • 2022-01-15
  • 1970-01-01
  • 2017-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多