public
__construct
(mixed $alias = null, \Joomla\Database\DatabaseDriver $database = null, \Joomla\Application\AbstractApplication $application = null)
/**
 * Class constructor
 *
 * @param   string               $alias        The alias for the item
 * @param   DatabaseDriver       $database     The database object
 * @param   AbstractApplication  $application  The application object
 *
 * @since   3.1
 */
public function __construct($alias = null, DatabaseDriver $database = null, AbstractApplication $application = null)
{
    $this->db = $database ?: Factory::getDbo();
    $app = $application ?: Factory::getApplication();
    // Make the best guess we can in the absence of information.
    $this->alias = $alias ?: $app->input->get('option') . '.' . $app->input->get('view');
    $this->type = $this->getTypeByAlias($this->alias);
}