code: protected ComponentDef actuallyCreateComponentDef(Class<?> implType) {
          final Class<?> targetClass = namingConvention.toCompleteClass(implType);
          checkImplementationCanBeCreated(targetClass);
          final AnnotationHandler handler = AnnotationHandlerFactory.getAnnotationHandler();
          final ComponentDef cd = handler.createComponentDef(targetClass, instanceDef, autoBindingDef, externalBinding);
          if (cd.getComponentName() == null) {
              cd.setComponentName(deriveComponentName(targetClass));
          }
          handler.appendDI(cd);
          customizer.customize(cd);
          handler.appendInitMethod(cd);
          handler.appendDestroyMethod(cd);
          handler.appendAspect(cd);
          handler.appendInterType(cd);
          return cd;
      }
docs: ===============