protected static function getCacheKey($type = self::REFLECTION_CLASS, $objectOrName, ...$params)
    {
        if (is_object($objectOrName)) {
            $className = static::getObjectClassName($objectOrName);
        } else {
            $className = $objectOrName;
        }
        $key = $className;
        switch ($type) {
            case static::REFLECTION_METHOD:
            case static::REFLECTION_PROPERTY:
                $methodOrProperty = $params[0];
                $key .= '::' . $methodOrProperty;
                break;
        }
        return $key;
    }