Class MethodIterator


  • public class MethodIterator
    extends java.lang.Object
    Utility used to iterate over the publicly visible methods of a class or interface. The MethodIterator understands some complications that can occur when a class inherits the same method from multiple interfaces and with slightly different signatures (due to the fact that declared thrown exceptions can vary slightly for the "same" method).
    See Also:
    MethodSignature.isOverridingSignatureOf(MethodSignature)
    • Constructor Summary

      Constructors 
      Constructor Description
      MethodIterator​(java.lang.Class subjectClass)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean getToString()
      Returns true if the method public String toString() is part of the interface.
      boolean hasNext()  
      static boolean isToString​(java.lang.reflect.Method method)
      Returns true if the method is the standard toString() method.
      MethodSignature next()
      Returns the next method (as a MethodSignature, returning null when all are exhausted.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MethodIterator

        public MethodIterator​(java.lang.Class subjectClass)
    • Method Detail

      • isToString

        public static boolean isToString​(java.lang.reflect.Method method)
        Returns true if the method is the standard toString() method. Very few interfaces will ever include this method as part of the interface, but we have to be sure.
      • hasNext

        public boolean hasNext()
      • next

        public MethodSignature next()
        Returns the next method (as a MethodSignature, returning null when all are exhausted. Each method signature is returned exactly once (even if the same method signature is defined in multiple inherited classes or interfaces). The method signatures returned in ascending order, according to the "natural ordering".
        Throws:
        java.util.NoSuchElementException - if there are no more signatures
      • getToString

        public boolean getToString()
        Returns true if the method public String toString() is part of the interface. This will be known immediately after iterator contruction (it is not necessary to iterate the methods first).