Популярные вопросы по тегу INHERITANCE

Добавление нового метода в интерфейс Java, чтобы внести минимальные изменения в наследование классов.

... л реализован с моими тысячами 4 классов. Теперь я хочу добавить новый метод 3 в этот Interface X. Итак, как внести изменения минимальным 2 образом, чтобы решить проблему переопределен ...

Нет вызова функции соответствия базовому классу

... angeAndSpeedDesc = description; } Fighter.h #include "Airplane.h" using namespace std; #ifndef FIGHTER_H_ #define FIGHTER_H_ class Fighter:public Airplane { private: int fNumSeats; int fNumEngines; string rangeAndSpeedDesc; } Airplane.cpp #include "Airplane.h" using namespace std; Airplane::Airplane(int engines, int seats) { numSeats = seats; numEngines = engines; } ...

Котлин: Как дочерний конструктор может использовать вторичный конструктор своего родителя?

... name) { constructor() : super() // syntax error } Как дочерний конструктор может 11 использовать вторичный конструктор своего 10 родителя? Я знаю, что могу реализовать дочерний 9 конструктор, передавая те же значения, что 8 и родительский, но это не только кажется 7 избыточным, но и часто мои дочерние элементы 6 имеют дополнительные параметры для своего ...

Наследование Python по умолчанию?

... thon, например: class AClass: __slots__ = ['a' ...

Назначьте производный класс базовому классу

... ующее или это неопределенное 2 поведение: class Base { private: int a; }; class Derived : ...

Hibernate 4: сохранение значений столбца дискриминатора InheritanceType.JOINED

... не вставляет 10 значение дискриминатора 'external' в столбец discriminator таблицы 9 Documents. В прошлом были проблемы по этому поводу, см. https://hibernate.onjira.com/browse/ANN-140 и 8 совсем недавно для Hibernate 4 https://hibernate.onjira.com/browse/HHH-4358, так что, скорее 7 всего, это должно работать именно так. З ...

Создать экземпляр объекта производного класса, ctor базового класса которого является частным

... { cout << "base: ctor()\n"; } }; class derived: public base { public: derived() { cout << "derived: ctor()\n"; } }; int main() { derived d; } Этот код выдает ошибку 5 компиляции: accessing_private_ctor_in_base_class.cpp: в 4 конструкторе derived::derived()': accessing_priva ...

Возврат экземпляра производного класса из базового класса

... { get; } } public class Dog : Animal { public override Dog GetDog { get { return this; } } public override Cat GetCat { get { return null; } } } Считается ли это 10 плохой практикой иметь свойства в базовом 9 классе, возвращать производные типы. Или 8 мне сделать что-то вроде public abstract AnimalTypeEnum AnimalType { ...

Использование .apply() с оператором new. Это возможно?

... unction createSomething(){ return new Something.apply(null, arguments); } var s = createSomething(a,b,c); // 's' is an instance of Something Ответ Из 6 приведенных здесь ответов стало ясно, что 5 нет встроенного способа вызова .apply() с оператором 4 new. Однако люди предложили ряд действитель ...

Принудительный вызов базового метода

... ? Было 2 бы очень удобно .. --редактировать - Меня 1 в основном интересуют методы переопределения. ...

Декораторы Python и наследование

... it__(self): bar.__init__(self) @decor def add(self, x): return x К сожалению, название 8 "декор" не определено. Хорошо, а как насчет 7 @bar.decor? TypeError: несвязанный метод «decor» должен 6 вызываться с экземпляром бара в качестве 5 первого аргумента (вместо этого был получен 4 экземпляр функции) Хорошо, а как насчет @self.decor? Имя 3 «сам» не определено. Хорошо, а как н ...

Поля наследования Java

... у 3 результат равен 10, я думаю, что строка 2 A a = new B() создает новый экземпляр класса B, я думаю, результат 1 должен быть 20 class A { int i = 10; } class B extends ...

Наследование переменных класса в Python

... записываю. Теперь 16 у нас есть несколько подклассов этого: class A(Countable): def __init__(self, a='a'): self.a = a class B(Countable): def __init__(self, b='b'): self.b = b class B2(B): def __init__(self, b2='b2'): self.b2 = b2 def count(cls): print('@{:<5} Countables: {} As: {} Bs: {} B2s: {}' ''.format(cls.__name__, Countable.counter, A.counter, B.counter, B2.coun ...

Как в Java вызвать метод базового класса из метода переопределения в производном классе?

... Another code */ } } Я 2 хотел бы вызвать A.myMethod() из B.myMethod(). Я исхожу из C++ world и не 1 знаю, как сде ...

Использование метода __new__ класса в качестве Factory: __init__ вызывается дважды

... асса. Я 8 знаю, что использование фабричной функции 7 было бы лучшим шаблоном проектирования для 6 использования здесь, но изменение шаблона 5 проектирования на этом этапе проекта было 4 бы дорогостоящим. Поэтому мой вопрос: есть 3 ли способ избежать двойного вызова __init__ и получить 2 только один вызов __init__ в такой схеме? class Shape(object): def __new__(cls, desc): if cls is Shape: if desc == 'big': retu ...

util.inherits - альтернатива или обходной путь

... вызова inherits, var myClass = function(name){ this._name = name; }; util.inherits(myClass, require('events').EventEmitter); myClass.prototype.prop1 = function(){...}; myClass.prototype.prop2 = function(){...}; и, что наиболее важно, я думаю, что 3 не могу наследовать от двух или более разных 2 классов. Может ли кто-нибудь объяснить мне, поч ...

Python: наследование атрибута класса (список)

... значение является списком, срабатывает 5 эффект неглубокой копии и также затрагивается 4 значение суперкласса: class Unit(object): listvalue = [10] class Archer(Unit): pass print Unit.listvalue print Archer.listvalue Archer.listvalue[0] = 5 print Unit.listvalue print Archer.listvalue Вывод: 10 10 5 5 Есть 3 ли способ «глубокого копирования» спис ...

Как вызвать родительский конструктор?

... ть следующий фрагмент 1 кода. function test(id) { alert(id); } testChild.prototype = new test(); function testChild(){} ...

Переопределение метода Python, имеет ли значение подпись?

... class Sub(Super): def method1(param1, param2, param3): stuff Это правильно? Всегда 4 ли вызовы метода method1 переходят в по ...

Наследование комментариев для C# (на самом деле любой язык)

... summary> void Foo(); ///<summary> /// Bar method ///</summary> void Bar(); ///<summary> /// Situation normal ///</summary> void Snafu(); } И 5 этот кла ...

Переопределить виртуальный метод c ++

... ие (но его реализация предоставляется 14 в дочернем классе), а значение, возвращаемое 13 виртуальным методом в родительском классе, равно 12 используется в других методах этого класса. Потому 11 что я где-то видел (например, здесь: Safely override C++ virtual functions), что 10 это может вызвать некоторые проблемы, и 9 определяемый пользователем метод заметит 8 переопределение виртуального метода роди ...

Как мне вызвать суперконструктор в Dart?

... ктор в Dart? Можно 1 ли вызыва ...

Как вызвать супер-метод из класса внука?

... роизводного класса самого нижнего 3 уровня, на 2 уровня вверх по иерархии, например ...

Не объявлено в этой области "ошибка с шаблонами и наследованием

... ublic Base < std::vector<InterfaceType> > { public: ChildClass() {} virtual ~ChildClass() {} protected: virtual void set(); }; template <typename InterfaceType> void ChildClass<InterfaceType>::set() { myOption = 10; } Мое использование в main(): ChildClass<int> myObject; Я получаю 8 следующую ошибку ...

Путаница в конструкторе наследования классов TypeScript

... is.text.reduce((width: number, line: any) => Math.max(width, line.length), 0); } minHeight(): number { return this.text.length; } draw(width: number, height: number) : any[]{ var result: any[] = []; for (var i = 0; i < height; i++) { var line = this.text[i] || ''; result.push(line + repeat(' ', width - line.length)); } return ...

Как включить наследование enum

... SECOND("second"), THIRD("third"); private String httpMethodType; } Теперь клиенту, который использует 7 эту библиотеку, возможно, потребуется добавить 6 еще несколько значений. Допустим, клиенту 5 нужно добавить CUSTOM_FIRST и CUSTOM_SECOND. Это не перезаписывает 4 существующие значения, но делает перечисление 3 5 значениями. ...

Не может привести к реализованному интерфейсу

... puts 'AutocompleteResult' Но 6 когда я пытаюсь привести экземпляр класса 5 к интерфейсу: AutocompleteResult result = (AutocompleteResult) match; Я получаю исключение ClassCastException! ClassCastException: Device cannot be cast to AutocompleteResult Кроме 4 того, isAssignableFrom возвращает false, и я не уверен, почему: log.debug(AutocompleteResult.cla ...

Конструкторы по умолчанию и наследование в Java

... оставляет вам конструктор 12 по умолчанию (один без параметров), который 11 инициализирует все переменные экземпляра 10 класса (если есть) с некоторыми значениями 9 по умолчанию ( 0, null или false). Однако, если 8 вы пишете конструктор с некоторыми параметрами 7 и не пишете конструктор по умолчанию, тогда 6 Java не предоставляет конструктор по умолчанию. Мой 5 вопрос: как обстоят дела с классами, которые 4 наследуются от других кл ...

for-in vs Object.keys forEach без унаследованных свойств

... hasOwnProperty. Я попытался сделать так, чтобы 6 другой benchmark here делал именно это. Но теперь подход 5 for-in на 41% медленнее, чем Object.keys + forEach. обновить Вышеупомянутый тест был проведен 4 в Chrome. Протестировал еще раз, но с Safari, и 3 я получаю разные результаты: Object.keys(..).forEach(..) 34% slower, странно. Примечание. Я 2 проводил сравнительный анализ, чтобы проверить, как 1 обстоят дела с Node.js. ...

Проверка, является ли класс подклассом другого

... ра. У меня 7 есть класс, который получает в качестве 6 параметра имя класса, и в рамках процесса 5 проверки я хочу проверить, принадлежит ли 4 он к определенному семейству классов ...

Наследование SQLAlchemy

... и данными, которые 7 полностью разделены. Иногда мне нужны данные 6 от всех классов, а иногда только от подклассов. Вот 5 пример: class Building: def __init__(self, x, y): self.x = x self.y = y class Commercial(Building): def __init__(self, x, y, business): Building.__init__(self, x, y) self.business = business class Residential(Building): def __init__(self, x, y, numResidents) ...

Как расширить Python class init

... ть? class SubThing(Thing): # something here to extend the init and add a "time" property def __repr__(self): return '<%s %s>' % (self.name, self.time) Любая помощь была бы замечател ...

Как получить экземпляр базового класса из производного класса

... } } public class SubChild : SuperParent { public SubChild(int pSPID) { base.SPID = pSPID; } public int BaseSPID { get { SuperParent sp = base; return sp. ...

Правила наследования и переопределения универсальных методов Java

... версальный параметр конкретными 15 типами. Итак, в псевдокоде у меня есть следующее: public abstract class GetAndParse { public SomeClass var; public abstract <T extends AnotherClass> void getAndParse(T... args); } public class Implementor extends GetAndParse { // some field declarations // some method declarations @Override public <SpecificClass> void getAndParse(SpecificClass... args) { / ...

Возможно ли в Python объявить, что этот метод должен быть переопределен?

... return 2 + 2 И 5 класс B, подкласс A: class B(A): def do_stuff() return 4 Есть ли способ объявить, что 4 метод A.do_some_cool_stuff должен быть переопред ...

«Наследование» статических членов C# - зачем оно вообще существует?

... одклассом A, вы по-прежнему не 18 можете вызвать T.M() (что, вероятно, упрощает 17 работу виртуальной машины), не говоря уже 16 о том, чтобы написать другую реализацию 15 M в подклассе и использовать ее. Итак, «наследование» статических 14 членов просто выглядит как загрязнение пространства 13 имен; даже если вы явно указали имя (т. е. B.M), версия 12 A все равно определена. Изменить по сравнению с пространствам ...

Является ли List <Dog> подклассом List <Animal>? Почему дженерики Java не являются неявно полиморфными?

... 11 следующую иерархию - Животное (родитель) Собака - Кошка (дети) Предположим, у 10 меня есть метод doSomething(List&lt;Animal&gt; animals). По всем правилам наследования 9 и полиморфизма я бы предположил, что List&lt;Dog&gt; является List&lt;Animal&gt;, а 8 List&lt;Cat&gt; является List&lt;Animal&gt; - и так либо можно передать этому мет ...

Расширение красноречивых моделей в Laravel (используйте разные таблицы)

... на Laravel, которое 10 включает в себя отслеживание различных типов 9 потенциальных клиентов. Например, есть лиды рефинансирования и 8 лиды покупки. Поскольку у потенциальных клиентов имеется 7 много информации и функций, но не все, я 6 решил создать класс Lead, который расширяет 5 класс Model Laravel, а затем класс RefinanceLead, расширяющий 4 Lead класс. Итак, у меня было: class Lead extends Model { // shar ...

Доступ к переменной класса JavaScript внутри функции класса

... ня есть это: function FilterSelect(select, search) { this.select = select; this.search = search; // Get the current list options this.options = this.select.options; // Whenever the text of the search box changes, do this this.search.onkeyup = function ...

Переопределить метод с разными типами аргументов в расширенном классе - Typescript

... er)); } } Тем не менее, это 9 приводит к ошибке машинописного текста: Свойство 8 myMethod в типе Child нельзя присвоить тому 7 же самому недвижимость в базовом типе 6 «База». Введите '(myNumber: number) => undefined' не 5 может быть назначен типу '(myString: string) => undefined'. Типы 4 параметров myNumber и myString несовместимы. Тип 3 "строка" нельзя присв ...

В производном классе __init__ больше аргументов, чем в базовом классе __init__

... def parse_init_kwargs(self, kwargs): """ Parse the remaining kwargs to `__init__`. """ pass class LoremIpsum(Ipsum): """ A more refined ipsum that also lorems. """ def parse_init_kwargs(self, kwargs): (dolor, sit, ame ...

Как я могу динамически создавать производные классы из базового класса

... что конструктор принимает 7 ряд ранее неопределенных аргументов. Так, например, MyClass принимает 6 ключевые слова a, а конструктор класса TestClass принимает 5 b и c. inst1 = MyClass(a=4) inst2 = MyClass(a=5) inst3 = TestClass(b=False, c = "test") Но они НИКОГДА не должны использовать 4 тип класса в качестве входного аргумента, например inst1 = BaseClass(classtype = "My", a=4) Я 3 заставил это работать, но предпочел ...

Как проверить, что тип унаследован от некоторого интерфейса с #

... p; [type is inherited from Iinterface]) { ... } } Как проверить, унаследован 2 ли тип от MyInterface? Будет ли работать 1 так keywork? С ...

Полиморфные ассоциации Entity Framework

... ssources { get; set; } ... } public interface IRessource { public int RessourceTypeId { get; set; } } public class Room : IRessource { public int RoomID { get; set; } public int RessourceTypeId { get; set; } ... } public class Car : IRessource { public int CarID { get; set; } public int RessourceTypeId { get; set; } ... } Достижимо 2 ли это, и ес ...

Наследование от str или int

... init__(self, a, b): str.__init__(self,a) self.b = b C(&quot;a&quot;, &quot;B&quot;) TypeError: str() takes at most 1 argument (2 given) то же самое происходит, если 3 я пытаюсь использова ...

Понимание Python super() с помощью методов __init __()

... класса могут быть созданы, и 3 это нормально. Мне любопытно узнать о реальной 2 разнице между следующими двумя дочерними 1 классами. class Base(object): def __init__(self): print "Base created" class ChildA(Base): ...

Наследование C#: реализует + расширяет

... что-то подобное в C#: public class MyClass implements ClassA extends ClassB { } Мне 6 это нужно, потому что: у меня есть два класса, один 5 из которых - Interface, который я ...

Вызов метода дочернего класса из объекта родительского класса

... ype of question that is going to be rendered. Each question type has its own rendering function. If this is for choice , I need to access its functions using q. */ if(q.getOption().getMultiple()) {...} } } В операторе if говорится, что 6 «не удается найти getMultiple ...

Самый эффективный способ привести List <SubClass> к List <BaseClass>

... матривать 8 как List&lt;BaseClass&gt;. Похоже, это не должно быть проблемой, поскольку 7 приведение SubClass к BaseClass - несложная задача, но мой 6 компилятор жалуется, что приведение невозможно. Итак, как 5 лучше всего получить ссылку на те же объекты, что 4 и List&lt;BaseClass&gt;? Сейчас я просто создаю новый список и 3 копиру ...

Неопределенная ссылка C++ на vtable и наследование

... virtual ~A(); virtual void doWork(); }; #endif Файл Child.h #ifndef CHILD_H_ #define CHILD_H_ #include "A.h" class Child: public A { private: int x,y; public: Child(); ~Child(); void doWork(); }; #endif И Child.cpp #include "Child.h" Child::Child(){ x = 5; } Child::~Child(){...} void Child::doWork(){...}; Компилятор 5 ...