Преимущества использования конструктора?

Предполагается, что вы ожидаете следующую функциональность:

$("ul.nav > li > a").hover(
 function(e) {
  $('ul.nav > li > a.on-hover').removeClass('on-hover');
  $(this).addClass('on-hover');
 }, 
function(e){
 //If you expecting to hide on-hover-out as well, uncomment the below line
 //$('ul.nav > li > a.on-hover').removeClass('on-hover');
});

См. В действии: http://jsfiddle.net/kn761qgL/ и подтвердите.

6
задан Keith Donegan 31 December 2008 в 18:44
поделиться

2 ответа

Да конструктора вызывают, когда объект создается.

Небольшой пример полноценности конструктора - это

class Bar
{
    // The variable we will be using within our class
    var $val;

    // This function is called when someone does $foo = new Bar();
    // But this constructor has also an $var within its definition,
    // So you have to do $foo = new Bar("some data")
    function __construct($var)
    {
        // Assign's the $var from the constructor to the $val variable 
        // we defined above
        $this->val = $var
    }
}

$foo = new Bar("baz");

echo $foo->val // baz

// You can also do this to see everything defined within the class
print_r($foo);

ОБНОВЛЕНИЕ: вопросом, который также задают, почему это должно использоваться, реальный пример, является класс базы данных, где Вы называете объект с именем пользователя и паролем и таблицей для соединения с, с которым соединился бы конструктор. Затем у Вас есть функции, чтобы сделать всю работу в той базе данных.

10
ответ дан 8 December 2019 в 02:08
поделиться

Конструктор позволяет Вам удостоверяться, что объект помещается в конкретное состояние, прежде чем Вы попытаетесь использовать его. Например, если Ваш объект имеет определенные свойства, которые требуются, чтобы он использовался, Вы могли инициализировать их в конструкторе. Кроме того, конструкторы позволяют эффективному способу инициализировать объекты.

28
ответ дан 8 December 2019 в 02:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: