データベースとのやり取りには JDatabaseDriver を使用します。公式の Joomla ドキュメントから取った次のコード。 ドキュメンテーション
// Get a db connection.
$db = JFactory::getDbo();
// Create a new query object.
$query = $db->getQuery(true);
$query
->select($db->quoteName(array('user_id', 'profile_key', 'profile_value', 'ordering')))
->from($db->quoteName('#__user_profiles'))
->setLimit('10');
上記のコードの最後の行を見てください。setlimit メソッドは JDatabaseDriver クラスには存在しませんが、クラス - JDatabaseQueryMysqli で宣言されています。ロジックが理解できないか、何か間違いがありますか?