Вопросы с тегом «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 с использованием ключевого слова new 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; } } Мое решение: (СПОЙЛЕР) public class Place { public interface Sparta { } …

4
Есть ли что-то вроде наследования аннотаций в java?
Я изучаю аннотации и дошел до того, что некоторые аннотации, кажется, имеют иерархию между собой. Я использую аннотации для генерации кода в фоновом режиме для карточек. Существуют разные типы карточек (следовательно, разный код и аннотации), но есть определенные элементы, которые у них общие, например, имя. @Target(value = {ElementType.TYPE}) public @interface …

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 = 0; this.y = 0; } …

6
ООП JavaScript в NodeJS: как?
Я привык к классическому ООП, как в Java. Каковы лучшие практики для ООП в 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 мог выбрать правильные методы. Даже если тип аннотации аннотируется классом реализации аннотации Inherited, он не наследует аннотацию, как указано в java-документе Inherited: Также обратите внимание, что эта мета-аннотация …

6
Наследование от класса шаблона в c ++
Допустим, у нас есть шаблонный класс Area, который имеет переменную-член T area, а T getArea()и void setArea(T)функции-члены. Я могу создать Areaобъект определенного типа, набрав Area<int>. Теперь у меня есть класс Rectangle, наследующий этот Areaкласс. Поскольку Rectangleсам по себе не является шаблоном, я не могу печатать Rectangle<int>. Как мне специализировать унаследованный …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.