Метод Type.initializeBase

Инициализирует базовый класс и его члены в контексте заданного экземпляра, предоставляющего модель для наследования и инициализации базовых членов.

var typeInstanceVar = typeVar.baseClassName.initializeBase(instance, baseArguments );

Параметры

  • instance
    Экземпляр, для которого выполняется инициализация базового класса. Обычно this.

  • baseArguments
    (Дополнительно) Аргументы для базового конструктора. Может быть null.

Возвращаемое значение

Экземпляр базового класса.

Исключения

Тип исключения

Атрибут Condition

Функция Error.argumentType

(Отладка) Тип параметра instance отличается от типа текущего экземпляра.

Заметки

Метод initializeBase используется для инициализации базового класса в контексте заданного экземпляра. Вызовите initializeBase из конструктора или класса, производного от базового класса. При создании экземпляра производного класса происходит вызов метода initializeBase. Экземпляр дочернего класса наследует объектную модель базового класса и выполняется инициализация его членов.

Пример

В следующем примере показано создание базового класса и использование метода initializeBase в конструкторе производного класса.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Sample</title>
</head>
<body>
    <form id="form1" runat="server">
       <asp:ScriptManager runat="server" ID="ScriptManager1">
       </asp:ScriptManager>

       <script type="text/javascript">
        // Register classes to test.
        Type.registerNamespace('Samples');

        Samples.A = function()
        {
            // Initialize as a base class.
            Samples.A.initializeBase(this);
        }

        Samples.B = function(){}
        Samples.C = function(){}

        Samples.A.registerClass('Samples.A');
        Samples.B.registerClass('Samples.B', Samples.A);

        Samples.C.registerClass('Samples.C');

        var isDerived;
        isDerived = Samples.B.inheritsFrom(Samples.A);
        // Output: "true".
        alert(isDerived);

        isDerived = Samples.C.inheritsFrom(Samples.A);
        // Output: "false".
        alert(isDerived);

        </script>
    </form>

</body>
</html>

См. также

Ссылки

Класс Type

Другие ресурсы

Справочник по языку