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


Разберитесь с полиморфизмом раз и навсегда
Основной причиной использования интерфейсов является достижение полиморфизма и предоставление разработчикам возможности в будущем реализовывать методы интерфейса по-своему. В этом примере я буду использовать TypeScript и помещу репозиторий в конец заметки. Предположим, у нас есть интерфейс и три класса: Это интерфейс коннектора. Теперь мы собираемся реализовать связь Wi-Fi. Здесь мы разработали наш конкретный класс под названием WifiConnector, который имеет собственную..

Сравнение наследования и полиморфизма в JAVA
Наследование: Наследование — это организационный механизм, который позволяет создавать иерархическую классификацию. Используя наследование, мы можем создать новый класс, являющийся специализацией существующего класса. В терминологии Java наследуемый класс называется суперклассом. Класс, выполняющий наследование, называется подклассом. Следовательно, подкласс — это специализированная версия суперкласса. Повторное использование: когда мы хотим создать новый класс, а уже есть..

Что такое утиный ввод в JavaScript?
Почему JavaScript думает, что на этой картинке изображена утка, печатающая текст, и почему это должно вас волновать? JavaScript думает, что это изображение утки, печатающей текст. Нет, серьезно, это так. И что касается нас, если JavaScript думает, что это изображение утиного набора, мы также можем предположить, что это изображение утиного набора. Что я имею в виду? Ну, утиный ввод означает, что если два или более не связанных между собой объекта реагируют на одно и то же..

Эти 4 примера объясняют все о полиморфизме Java
В этой статье давайте обсудим основные и сложные концепции, лежащие в основе термина полиморфизм. Мы также обсудим некоторые хитрые способы кодирования с использованием переопределения и перегрузки методов. Это поможет взломать интервью. Основная концепция Основная концепция полиморфизма - это одно и то же имя, но разные функции . В java можно создавать разные функции с одним и тем же именем, все эти функции подпадают под полиморфизм. Есть два типа полиморфизмов...

Почему и когда использовать полиморфизм?
УПРОЩЕННОЕ ЗАЯВЛЕНИЕ О ПОЛИМОРФИЗМЕ Почему и когда использовать полиморфизм? Объектно-ориентированное программирование или сокращенно ООП является неотъемлемой частью современной архитектуры приложений. ООП включает четыре фундаментальных понятия: ПИРОГ: абстракция, полиморфизм, наследование и инкапсуляция. Полиморфизм состоит из двух частей: поли (множественный) и морф (форма). Согласно Wikipedia.com , полиморфизм описывается следующим образом: В языках..

Полиморфизм Scala и классы типов
полиморфизм | ˌpɒlɪˈmɔːfɪz(ə)m | существительное [массовое существительное] условие возникновения в нескольких различных формах: сложность и полиморфизм человеческого познания . Полиморфизм подтипа Это хлеб с маслом ООП Суть полиморфизма подтипов заключается в том, что мы можем абстрагироваться от некоторых вычислений (возвращая строку) в зависимости от того, что это за объект. Cat является животным и может заменить его. Generics — Параметрический полиморфизм в мире FP..

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

Являются ли нечистые виртуальные функции с параметрами плохой практикой?
У меня есть базовый класс с дополнительной виртуальной функцией class Base { virtual void OnlyImplementThisSometimes(int x) {} }; Когда я компилирую это, я получаю предупреждение о неиспользуемом параметре x. Есть ли другой способ...
4926 просмотров
schedule 22.04.2023

Как бы вы реорганизовали это условие, чтобы использовать полиморфизм?
Я только что закончил смотреть видео о чистом коде Google на YouTube (см. ссылку , первая статья) об удалении if утверждений из ваш код и вместо этого использовать полиморфизм. После просмотра видео я просмотрел некоторый код, который я писал...
1960 просмотров
schedule 29.05.2023

Когда использовать виртуальные деструкторы?
Я хорошо разбираюсь в большинстве OOP теорий, но единственное, что меня сильно смущает, - это виртуальные деструкторы. Я думал, что деструктор всегда вызывается независимо от того, что и для каждого объекта в цепочке. Когда вы хотите сделать их...
754710 просмотров

Полиморфизм C++ и Ruby с использованием SWIG
Я использую SWIG, чтобы обернуть сценарий Ruby вокруг библиотеки C++. В Ruby я могу наследовать от класса C++, но я не могу передать результирующий указатель на функцию C++ полиморфным образом. Вот конкретный пример. Файл интерфейса SWIG...
2063 просмотров
schedule 25.03.2022

Проблема полиморфизма - виртуальные поля? (С#)
У меня проблема с дизайном класса. У меня есть основной класс для моих игровых объектов. Во время рисования мне нужно получить позицию из объекта. К сожалению, объект рассматривается как базовый тип, поэтому позиция извлекается не из производного...
2258 просмотров
schedule 23.12.2022

Java: что быстрее перегружается или if/else
У меня есть дочерние классы, каждый из которых имеет разные значения вместе с другими членами. Может быть LongObject, IntObject, StringObject и т. д. Мне будет дано значение, которое может быть long, int, string и т. д., и я должен создать...
3081 просмотров

Спящий полиморфизм
Это вопрос о полиморфизме Hibnerate и вопрос о дизайне модели данных; они переплетаются. Я использовал Hibernate в прошлом, и мне это нравилось, но иногда мне трудно думать о чем-либо, кроме тривиальных проектов. Не стук в Hibernate; просто...
15699 просмотров
schedule 11.04.2023

Спящий полиморфный запрос
У меня есть два класса, Person и Company, производные от другого класса Contact. Они представлены полиморфно в двух таблицах (Person и Company). Упрощенные классы выглядят так: public abstract class Contact { Integer id; public abstract...
5345 просмотров
schedule 16.07.2022

Как добавить информацию о родительском экземпляре в отношение has_many?
Я использую плагин acts as tagable on steroids , и мое веб-приложение имеет 4 модели: Категория Entry - acts as taggable and contains the following using single table inheritance Story Тема Категория имеет два важных поля:...
163 просмотров

Могу ли я создать объект из производного класса, создав базовый объект с параметром?
Другими словами, для базового класса shape и производного класса rectangle : class shape { public: enum shapeType {LINE, RECTANGLE}; shape(shapeType type); shape(const shape &shp); } class rectangle : public shape { public:...
335 просмотров

перегрузка методов и полиморфизм
Я пишу веб-приложение .NET, в котором администраторы могут настраивать различные формы ввода данных, представляемые пользователям. Существует около полудюжины различных типов полей, которые администраторы могут создавать и настраивать (например,...
3106 просмотров
schedule 27.09.2022

Ошибка при вызове функции и передаче ссылки на указатель с производным типом
Может кто-нибудь объяснить, почему следующий код недействителен? Это потому, что смещение для переменной с именем d отличается от смещения переменной с именем b ? class Base { public: int foo; }; class Derived : public Base { public: int bar;...
4165 просмотров
schedule 05.05.2024

статический метод с полиморфизмом в С++
У меня странная проблема с использованием полиморфизма. У меня есть базовый класс, реализующий статический метод. Этот метод должен быть статическим по разным причинам. Базовый класс также имеет чисто виртуальный метод run() , который реализуется...
3892 просмотров

Анализ воздействия на подкласс
Я изменял переопределенный метод подкласса. Чтобы определить влияние изменения, я перебрал все возможные сценарии и протестировал их. Проблема в том, что «все возможные сценарии» определяются путем чтения бизнес-сценариев использования с...
126 просмотров
schedule 29.03.2022

Возврат подкласса абстрактного класса в методе абстрактного класса
У меня есть класс, в котором есть функция для извлечения дочерних элементов из базы данных. Следующий код будет довольно псевдо, потому что я хочу, чтобы он был как можно проще. abstract class SomeHostObject extends SomeObject { function...
785 просмотров
schedule 14.12.2022

Java: почему метод базового класса может вызывать несуществующий метод?
class BaseClass { private void f() { System.out.println("Baseclass f()"); } public static void main(String[] args) { BaseClass dc = new DerivedClass(); dc.f(); } } class DerivedClass extends BaseClass {...
1082 просмотров
schedule 23.05.2023

Rails — встроенный полиморфный список комментариев + форма добавления комментариев — пример?
Всем привет. Работаю над своим первым приложением на Rails. Я искал повсюду - прочитал кучу руководств, статей и сообщений на форумах, посмотрел несколько скринкастов и нашел несколько примеров, которые близки к тому, что я пытаюсь сделать (в...
3170 просмотров

Rails STI с использованием ОДНОЙ формы
У меня есть форма, которая позволяет мне добавлять в поток файлы разных форматов. Таким образом, поток состоит из множества файлов, эти файлы являются файлами XML, но в основном имеют разные схемы. У меня есть одна форма, которая позволяет...
3079 просмотров

Почему компилятор С# не может следовать всем путям кода через оператор switch
Код ниже работает нормально: ListControl lstMyControl; if (SomeVariable == SomeEnum.Value1) { lstMyControl = new DropDownList(); } else { lstMyControl = new RadioButtonList(); } lstMyControl.CssClass = "SomeClass"; Принимая во...
608 просмотров
schedule 09.10.2023

Сортировка объектов и полиморфизм
Предположим, у меня есть класс А. И B и C являются потомками A. Класс A имеет общий алгоритм сортировки массивов типа A, так что я мог использовать его для B и C без повторного написания алгоритма для каждого. В алгоритме иногда приходится...
1318 просмотров
schedule 24.09.2022