code: public MethodKey createCopy() {
          int size = getParameterCount();
          Class[] paramTypes = new Class[size];
          for (int i = 0; i < size; i++) {
              paramTypes[i] = getParameterType(i);
          }
          return new DefaultMethodKey(sender, name, paramTypes, isCallToSuper);
      }
docs: Creates an immutable copy that we can cache.