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

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

10
Перезапис збереженого ресурсу в Swift
Я помітив, що компілятор не дозволить мені замінити збережену властивість з іншим збереженим значенням (що здається дивним): class Jedi { var lightSaberColor = "Blue" } class Sith: Jedi { override var lightSaberColor = "Red" // Cannot override with a stored property lightSaberColor } Однак мені дозволено це робити з обчисленою …

4
Спадщина JavaScript: Object.create vs new
У JavaScript в чому різниця між цими двома прикладами: Необхідна умова: function SomeBaseClass(){ } SomeBaseClass.prototype = { doThis : function(){ }, doThat : function(){ } } Приклад спадкування A за допомогою Object.create: function MyClass(){ } MyClass.prototype = Object.create(SomeBaseClass.prototype); Приклад спадкування B за допомогою нового ключового слова function MyClass(){ } MyClass.prototype …


8
Чому ми не повинні використовувати захищені статики в Java
Я переглядав це запитання. Чи є спосіб зміни перемінних класів на Java? Перший коментар із 36 оновленнями: Якщо ви коли-небудь бачите protected static, запустіть. Хтось може пояснити, чому protected staticнахмурився?

3
Це Спарта, чи це?
Далі йде питання про інтерв'ю. Я придумав рішення, але не знаю, чому воно працює. Питання: Не змінюючи Spartaклас, напишіть якийсь код, який робить MakeItReturnFalseповернення false. public class Sparta : Place { public bool MakeItReturnFalse() { return this is Sparta; } } Моє рішення: (SPOILER) public class Place { public interface …

4
Чи є щось схоже на спадкування анотацій у java?
Я вивчаю анотації і дійшов до того, що деякі анотації, здається, мають ієрархію серед них. Я використовую примітки для генерування коду у фоновому режимі для Карт. Існують різні типи карток (таким чином, різні коди та примітки), але є певні елементи, які є спільними серед них, як ім'я. @Target(value = {ElementType.TYPE}) …

3
Чи поверне GetType () найбільш отриманий тип при виклику з базового класу?
Чи поверне GetType () найбільш отриманий тип при виклику з базового класу? Приклад: public abstract class A { private Type GetInfo() { return System.Attribute.GetCustomAttributes(this.GetType()); } } public class B : A { //Fields here have some custom attributes added to them } Або я повинен просто зробити абстрактний метод, який …

3
класичне успадкування проти прототипічного успадкування у javascript
У мене є дуже багато посилань у Google, і я не можу скласти гарне уявлення про різницю між класичним успадкуванням та прототиповим успадкуванням? Я навчився деяких речей з них, але все ще плутаю поняття. Переваги прототипічного успадкування над класичним? http://aaditmshah.github.io/why-prototypal-inheritance-matters/ Класичне успадкування // Shape - superclass function Shape() { this.x …

6
JavaScript OOP в NodeJS: як?
Я звик до класичного OOP, як на Java. Які найкращі практики робити OOP в JavaScript за допомогою NodeJS? Кожен клас - це файл із module.export? Як створити класи? this.Class = function() { //constructor? var privateField = "" this.publicField = "" var privateMethod = function() {} this.publicMethod = function() {} } …

4
Наслідуйте загальний базовий клас, застосуйте обмеження та реалізуйте інтерфейс у C #
Це синтаксичне запитання. У мене є загальний клас, який успадковується від загального базового класу і застосовує обмеження до одного з параметрів типу. Я також хочу, щоб похідний клас реалізував інтерфейс. За все життя я не можу зрозуміти правильний синтаксис. Ось що я маю: DerivedFoo<T1,T2> : ParentFoo<T1, T2> where T2 : …


7
Доступ до приватних успадкованих полів через відображення на Java
Я знайшов спосіб отримати успадкованих членів за допомогою class.getDeclaredFields(); приватних членів і звернутися до них, class.getFields() але я шукаю приватні спадкові поля. Як я можу цього досягти?

4
Python super () піднімає TypeError
У Python 2.5 наступний код підвищує TypeError: >>> class X: def a(self): print "a" >>> class Y(X): def a(self): super(Y,self).a() print "b" >>> c = Y() >>> c.a() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 3, in a TypeError: super() argument 1 must …

2
Чому класи java не успадковують анотації з реалізованих інтерфейсів?
Я використовував AOP Guice для перехоплення деяких викликів методів. Мій клас реалізує інтерфейс, і я хотів би зазначити методи інтерфейсу, щоб Guice міг вибрати правильні методи. Навіть якщо тип анотації позначається з класом реалізації Успадкованої анотації, не успадковується анотація, як зазначено в java doc Inherited: Зауважте також, що ця мета-анотація …

6
Успадкування від шаблонного класу в c ++
Скажімо, у нас є клас шаблонів Area, який має змінну member T area, a T getArea()та void setArea(T)member. Я можу створити Areaоб’єкт певного типу, ввівши Area<int>. Зараз у мене є клас, Rectangleякий успадковує Areaклас. Оскільки Rectangleсам по собі не є шаблоном, я не можу вводити текст Rectangle<int>. Як я спеціалізую …

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