Доступ к branch.init () в index.html из компонента - угловой 6

Поскольку A является абстрактным, вы можете добавить абстрактные методы в A и вызвать их из A и B, которые будут вынуждены реализовать метод, будет invoker:

abstract class A<T> where T:A
{
    public event Action<T> Event1;
    public abstract void Method();

    public A(){Method();}
}

class B : A<B>
{
    //has a field called Action<B> Event1;
    public void Method(){ //stuff }
}

При создании B, конструктор базового класса вызовет метод (), который реализуется только в B, заставляя экземпляр B быть вызванным.

Это позволяет A вызывать специальные методы подкласса, не требуя, чтобы A обладало конкретными знаниями о детях. Недостатком является то, что ВСЕ дети должны внедрять метод или повторно абстрагировать его на своих собственных детей.

0
задан Nemanja G 18 January 2019 в 09:10
поделиться