Запитання з тегом «inheritance»

Спадкування - це система в об'єктно-орієнтованому програмуванні, яка дозволяє об’єктам підтримувати операції, визначені передніми типами, не надаючи власного визначення. Це головний вектор поліморфізму в об'єктно-орієнтованому програмуванні.

17
У чому головна відмінність між спадщиною та поліморфізмом?
Мені було подано це питання сьогодні після закінчення модульного відкритого іспиту з книги, який я втратив. Я читав, Head first Javaі обидва визначення здавалося абсолютно однаковими. Мені було просто цікаво, яка ОСНОВНА різниця була для мого власного розуму. Я знаю, що існує ряд подібних питань до цього, але жодного я …


7
Чому я повинен оголошувати віртуальний деструктор для абстрактного класу в C ++?
Я знаю, що декларувати віртуальні деструктори для базових класів у C ++ є хорошою практикою, але чи завжди важливо оголошувати virtualдеструктори навіть для абстрактних класів, які функціонують як інтерфейси? Наведіть, будь ласка, кілька причин та прикладів.

8
Чим __proto__ відрізняється від constructor.prototype?
function Gadget(name, color) { this.name = name; this.color = color; } Gadget.prototype.rating = 3 var newtoy = new Gadget("webcam", "black") newtoy.constructor.prototype.constructor.prototype.constructor.prototype Він завжди повертає об'єкт з оцінкою = 3. Але якщо я виконую наступне: newtoy.__proto__.__proto__.__proto__ Ланцюг закінчується поверненням null. Також в Internet Explorer, як би я перевірив нуль, якщо немає …


11
Як розширити / успадкувати компоненти?
Я хотів би створити розширення для деяких компонентів, які вже розгорнуті в Angular 2, без необхідності переписувати їх майже повністю, оскільки базовий компонент може зазнати змін і бажаю, щоб ці зміни були відображені також у похідних компонентах. Я створив цей простий приклад, щоб спробувати пояснити свої питання: З наступним базовим …


2
С ++ успадкування - недоступна база?
Здається, я не в змозі використовувати базовий клас як параметр функції, чи я зіпсував свою спадщину? У моєму основному: int some_ftn(Foo *f) { /* some code */ }; Bar b; some_ftn(&b); І клас класу, що успадковує від Foo таким чином: class Bar : Foo { public: Bar(); //snip private: //snip …
157 c++  inheritance 

9
Чому не використовуються автоматичні методи суперкласу __init__?
Чому дизайнери Python вирішили, що __init__()методи підкласів не автоматично називають __init__()методи своїх суперкласів, як у деяких інших мовах? Чи справді така пітонічна і рекомендована ідіома подобається наступному? class Superclass(object): def __init__(self): print 'Do something' class Subclass(Superclass): def __init__(self): super(Subclass, self).__init__() print 'Do something else'


6
Різниця iOS між isKindOfClass та isMemberOfClass
Яка різниця між функціями isKindOfClass:(Class)aClassта isMemberOfClass:(Class)aClassфункціями? Я знаю, що це щось на кшталт малого, одне - глобальне, а інше - точне відповідність класу, але мені потрібен хтось, який би вказав, який саме, будь ласка. У Свіфт isKind(of aClass: AnyClass)і isMember(of aClass: AnyClass).

12
Спадщина проти агрегації [закрито]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

5
TypeError: module .__ init __ () бере щонайменше 2 аргументи (3 наведено)
Я визначив клас у файлі з ім’ям Object.py. Коли я намагаюся успадкувати цей клас в іншому файлі, виклик конструктора видає виняток: TypeError: module.__init__() takes at most 2 arguments (3 given) Це мій код: import Object class Visitor(Object): pass instance = Visitor() # this line throws the exception Що я роблю …

13
Під час виконання знайдіть усі класи в додатку Java, які розширюють базовий клас
Я хочу зробити щось подібне: List<Animal> animals = new ArrayList<Animal>(); for( Class c: list_of_all_classes_available_to_my_app() ) if (c is Animal) animals.add( new c() ); Отже, я хочу переглянути всі класи у Всесвіті моєї програми, і коли я знайду такий, який походить від Animal, я хочу створити новий об’єкт цього типу та …

5
C #: Підвищення спадкової події
У мене базовий клас, який містить такі події: public event EventHandler Loading; public event EventHandler Finished; У класі, який успадковує цей базовий клас, я намагаюся підняти подію: this.Loading(this, new EventHandler()); // All we care about is which object is loading. Я отримую таку помилку: Подія "BaseClass.Loading" може відображатися лише зліва …
144 c#  events  inheritance 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.