code: private void resolveSuperclassFieldDependencies(final Object reference, final Class<?> clazz) {
          if (clazz.equals(Object.class)) {
              return;
          }
  
          final Class<?> superclass = clazz.getSuperclass();
  
          resolveSuperclassFieldDependencies(reference, superclass);
  
          if (Modifier.isAbstract(clazz.getModifiers()) || Modifier.isInterface(clazz.getModifiers())) {
              return;
          }
  
          final Bean<?> bean = beanManager.getBean(clazz);
          final Set<FieldInjectionPoint> injectionPoints = bean.fieldInjectionPoints;
  
          for (final FieldInjectionPoint injectionPoint : injectionPoints) {
              final Object injection = beanManager.getInjectableReference(injectionPoint);
              final Field field = injectionPoint.getAnnotated().getJavaMember();
  
              try {
                  final Field declaredField = proxyClass.getDeclaredField(field.getName());
  
                  if (!Reflections.matchInheritance(declaredField, field)) { // Hide
                      try {
                          field.set(reference, injection);
                      } catch (final Exception e) {
                          throw new RuntimeException(e);
                      }
                  }
              } catch (final NoSuchFieldException ex) {
                  throw new RuntimeException(ex);
  
              }
          }
      }
docs: Resolves super class field dependencies for the specified reference.
  
  @param reference the specified reference
  @param clazz     the super class of the specified reference