Публикации по теме 'polymorphism'


Полиморфный как опора в Astro
Полиморфный как опора в Astro В Astro есть динамические теги — способ использовать элемент или компонент в качестве реквизита. Мне было трудно найти эту функцию, потому что сообщество React называет этот шаблон «полиморфным как опора». Потому что нам нравится наша псевдокомпьютерная чушь, созданная вручную. Динамические теги легко реализовать в Astro. Реализация без суеты Возьмите заглавную Element опору в качестве локальной переменной. Отобразите этот реквизит как..

Сигнатуры функций/методов
Термин «сигнатура функции» означает элементы, которые позволяют языку идентифицировать «упомянутую функцию». В строго типизированных языках (таких как Java, C, C++, C#, …) сигнатура функции состоит из ее имени и типа каждого из ее параметров. Это означает, что вы можете найти несколько функций с одинаковым именем, но с разными параметрами. Когда функция вызывается, компилятор будет искать функцию, которая применяется к этой сигнатуре. В этих языках со строковой типизацией возможен..

Понимание полиморфизма
полиморфизм, сложно звучащее слово, которое просто означает наличие множества форм. И, что вполне уместно, существует множество форм полиморфизма. Одна форма, называемая динамическим или динамическим полиморфизмом, позволяет нам получать доступ к методам, используя один и тот же интерфейс для различных типов объектов, которые могут реализовывать эти методы по-разному. Думайте об этой базовой кофеварке как о классе с методом заваривания кофе. Входными параметрами для этого метода..

Вопросы по теме 'polymorphism'

свойства и наследование python
У меня есть базовый класс со свойством, которое (метод get) я хочу перезаписать в подклассе. Моя первая мысль была примерно такой: class Foo(object): def _get_age(self): return 11 age = property(_get_age) class Bar(Foo):...
43092 просмотров

Можно ли добавить метод доступа к свойству в .NET, переопределив его?
Можно ли сделать что-то подобное? class A { public virtual string prop { get { return "A"; } } } class B: A { private string X; public override string prop { get {...
315 просмотров

Дженерики высшего порядка в Java
Предположим, у меня есть следующий класс: public class FixExpr { Expr<FixExpr> in; } Теперь я хочу представить общий аргумент, абстрагируясь от использования Expr: public class Fix<F> { F<Fix<F>> in; } Но...
5447 просмотров

Поле принадлежит классу, но как использовать полиморфизм
У меня есть метод в базовом классе class Base { private static string Colour = "blue"; string DoStuff() { return ColourProp; } protected virtual string ColourProp { get{ return Base.Colour; } } } который вызывается для экземпляра...
809 просмотров
schedule 25.02.2024

Является ли Clojure объектно-ориентированным по своей сути? (Полиморфизм в последовательностях)
Clojure — это функциональный лисп, по сообщениям, совсем не объектно-ориентированный, хотя он работает на JVM, виртуальной машине, разработанной для объектно-ориентированного языка. Clojure предоставляет идентичные интерфейсы для перебора списков и...
6839 просмотров
schedule 18.11.2023

Как вызвать переопределенные методы в подклассе? Потенциальный кандидат на рефакторинг
Первоначально у меня была проблема проектирования, когда мне нужно было пять подклассов суперкласса, где все, кроме двух, использовали бы один и тот же общий метод выполнения действий, а два других класса нуждались бы в специальной обработке. Я хотел...
4321 просмотров

Полиморфный вызов
Я новичок в java, я видел в коде во многих местах, где мои старшие объявили как List myList = new ArrayList(); (вариант 1) Вместо ArrayList myList = new ArrayList(); (вариант 2) Скажите, пожалуйста, почему люди используют вариант 1,...
4401 просмотров
schedule 10.10.2022

Проверка типов C++ во время компиляции
все. Я новичок в C++ и пишу небольшую библиотеку (в основном для своих собственных проектов) на C++. В процессе проектирования иерархии типов я столкнулся с проблемой определения оператора присваивания. Я использовал базовый подход, который в...
2419 просмотров

Scala: тип параметра в уточнении структуры не может ссылаться на абстрактный тип, определенный вне этого уточнения.
У меня проблема с дженериками scala. В то время как первая функция, которую я определил здесь, выглядит совершенно нормально, компилятор жалуется на второе определение: error: Parameter type in structural refinement may not refer to an abstract...
1271 просмотров
schedule 06.02.2024

Почему полиморфизм Java не может уловить правильный метод при выборе между объектом и вектором?
У меня есть два похожих метода. Один предназначен для обработки объектов, другие векторы: @SuppressWarnings("unused") private void printRows(PrintWriter out, Vector<?> dataOb, String[] columns, String[] columnType,...
618 просмотров
schedule 17.02.2024

Как правильно работать с различным поведением на основе полиморфизма
Предположим, у меня есть интерфейс IFoo с классами реализации VideoFoo , AudioFoo и TextFoo . Предположим далее, что я не могу изменить ни один из этих кодов. Предположим, что затем я хотел бы написать функцию, которая действует по-разному в...
350 просмотров
schedule 18.01.2024

Почему мой вектор не распознает мои производные классы?
У меня огромная проблема, намного больше, чем то, что я собираюсь опубликовать, но если кто-то может помочь мне с этим, то отсюда все будет гладко. Итак, мой вектор указателей ОТКАЗЫВАЕТСЯ распознавать его производные классы. Позволь мне...
235 просмотров

Полиморфизм с gson
У меня проблема с десериализацией строки json с помощью Gson. Я получаю массив команд. Команда может быть запуском, остановкой и другим типом команды. Естественно, у меня полиморфизм, и команда запуска/остановки наследуется от команды. Как я...
58743 просмотров
schedule 25.04.2024

Шаблон декоратора тратит память
У меня есть этот базовый класс со следующим интерфейсом: abstract class Base { abstract public object Val { get; } } Для любых производных классов значение Val должно указываться во время создания объекта. Вопрос в следующем:...
549 просмотров

Почему мультиметоды Clojure лучше, чем операторы if или case
Я потратил некоторое время, пытаясь понять мультиметоды Clojure. Главный аргумент "за" мультиметоды, насколько я понимаю, это их гибкость, однако меня смущает аргументация того, почему мультиметоды лучше простого оператора if или case. Может...
1566 просмотров

SWIG Java Retaining Class информация об объектах, возвращающихся из C++
Хорошо, есть ключевое слово, которое я намеренно убрал из тегов и заголовка. Это "Android", но это потому, что хотя проект и на Android, я не думаю, что мой вопрос имеет к нему какое-то отношение, и я не хочу пугать людей без опыта работы с Android....
1746 просмотров
schedule 10.01.2024

почему полиморфизм не обрабатывает общие коллекции и простые массивы одинаково?
предположим, что класс Dog расширяет класс Animal: почему этот полиморфный оператор не разрешен: List<Animal> myList = new ArrayList<Dog>(); Однако это разрешено с простыми массивами: Animal[] x=new Dog[3];
5379 просмотров
schedule 19.12.2023

Это все еще полиморфизм?
Во время кодирования у меня возникло интересное сомнение по поводу полиморфизма, и я не мог найти решения для этого. public class Animal { public void getLegs() { SOP("4 legs"); } } public class Kangaroo extends Animal { public void...
243 просмотров
schedule 06.04.2024

Почему порядок наследования или сопоставление влияет на индекс vftable? (для VSC для C++)
Немного поигравшись с полиморфизмом, я попытался сделать что-то вроде следующего: class a { virtual void method() { } }; class b { virtual void method() { } }; class c : public a, b { virtual void method() { } virtual void anotherMethod()...
464 просмотров
schedule 14.10.2022

Полиморфизм/динамическая привязка, суперкласс или интерфейс?
Если у меня есть несколько подтипов, каждый из которых наследует абстрактный суперкласс, и этот суперкласс реализует интерфейс - при реализации динамической привязки/полиморфизма есть ли разница между объявлением объектов как типа суперкласса, а не...
1700 просмотров
schedule 28.03.2024