In computer science, polymorphism is a programming language feature that allows values of different data types to be handled using a uniform interface. The concept of parametric polymorphism applies to both data types and functions. A function that can evaluate to or be applied to values of different types is known as a polymorphic function. A data type that can appear to be of a generalized type (e.g.

PropertyValue
dbpprop:aboutProperty
dbpprop:abstract
  • In computer science, polymorphism is a programming language feature that allows values of different data types to be handled using a uniform interface. The concept of parametric polymorphism applies to both data types and functions. A function that can evaluate to or be applied to values of different types is known as a polymorphic function. A data type that can appear to be of a generalized type (e.g. , a list with elements of arbitrary type) is designated polymorphic data type like the generalized type from which such specializations are made. There are two fundamentally different kinds of polymorphism, originally informally described by Christopher Strachey in 1967. If the range of actual types that can be used is finite and the combinations must be specified individually prior to use, it is called ad-hoc polymorphism. If all code is written without mention of any specific type and thus can be used transparently with any number of new types, it is called parametric polymorphism. John C. Reynolds formally developed this notion of polymorphism as an extension to the lambda calculus. In object-oriented programming, ad-hoc polymorphism is a concept in type theory wherein a name may denote instances of many different classes as long as they are related by some common super class. Ad-hoc polymorphism is generally supported through subtyping, i.e. , objects of different types are entirely substitutable for objects of another type (their base type) and thus can be handled via a common interface. Ad-hoc polymorphism is also supported in many languages using function and method overloading. Parametric polymorphism is widely supported in statically typed functional programming languages. In the object-oriented programming community, programming using parametric polymorphism is often called generic programming.
  • Polymorphie ist ein Konzept von Programmiersprachen. Es beschreibt die Fähigkeit eines Bezeichners – der einen Festwert oder eine Variable repräsentieren kann – sich abhängig von seiner Verwendung unterschiedlich darzustellen. Sie erlaubt dem Bezeichner, je nach Kontext einen unterschiedlichen Datentypen anzunehmen. Das Gegenteil der Polymorphie ist die Monomorphie. Die Variable oder das Literal sind dann während der gesamten Laufzeit von genau einem Typ.
  • En programación orientada a objetos se denomina polimorfismo a la capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en función de los parámetros utilizados durante su invocación. Un objeto polimórfico es una entidad que puede contener valores de diferentes tipos durante la ejecución del programa. Dicho de otra forma, el polimorfismo consiste en conseguir que un objeto de una clase se comporte como un objeto de cualquiera de sus subclases, dependiendo de la forma de llamar a los métodos de dicha clase o subclases. Una forma de conseguir objetos polimórficos es mediante el uso de punteros a la superclase. De esta forma podemos tener dentro de una misma estructura (arrays, listas, pilas, colas, ... ) objetos de distintas subclases, haciendo que el tipo base de dichas estructuras sea un puntero a la superclase. Otros lenguajes nos dan la posibilidad de crear objetos polimórficos con el operador new. La forma de utilizarlo, por ejemplo en java, sería: Superclase sup = new (Subclase); En la práctica esto quiere decir que un puntero a un tipo puede contener varios tipos diferentes, no solo el creado. De esta forma podemos tener un puntero a un objeto de la clase Trabajador, pero este puntero puede estar apuntando a un objeto subclase de la anterior como podría ser Márketing, Ventas o Recepcionistas (todas ellas deberían ser subclase de Trabajador). El concepto de polimorfismo se puede aplicar tanto a funciones como a tipos de datos. Así nacen los conceptos de funciones polimórficas y tipos polimórficos. Las primeras son aquellas funciones que pueden evaluarse o ser aplicadas a diferentes tipos de datos de forma indistinta; los tipos polimórficos, por su parte, son aquellos tipos de datos que contienen al menos un elemento cuyo tipo no está especificado.
  • En informatique, le polymorphisme est l'idée d'autoriser le même code à être utilisé avec différents types, ce qui permet des implémentations plus abstraites et générales.
  • ポリモーフィズムあるいはポリモルフィズム(Polymorphism)とは、プログラミング言語の型システムの性質を表すもので、プログラミング言語の各要素(定数、変数、式、オブジェクト、関数、メソッドなど)についてそれらが複数の型に属することを許すという性質を指す。多態性、多相性、多様性とも呼ばれる。対義語はモノモーフィズム(Monomorphism)、単態性、単相性で、プログラミング言語の各要素が唯一つの型に属するという性質を指す。
  • Polymorfisme staat voor veelvormigheid. In het geval van de informatica wordt hiermee bedoeld het gelijkvormig zijn van de interface van klassen en objecten, maar met verschillende implementaties. De gelijkvormigheid betreft dan voornamelijk het gebruik en de naamgeving van operaties. Dit wordt gezien als een zeer belangrijke factor om het objectgeöriënteerd programmeren goed tot zijn recht te laten komen, maar in feite behoort elke programmatuur dit toe te passen.
  • Polimorfizm to mechanizmy pozwalające programiście używać wartości, zmiennych i podprogramów na kilka różnych sposobów inaczej to możliwość wyabstrahowania wyrażeń od konkretnych typów. Podczas pisania programu wygodnie jest traktować nawet różne dane w jednolity sposób. Niezależnie czy należy wydrukować liczbę czy napis, czytelniej (zazwyczaj) jest gdy operacja taka nazywa się po prostu drukuj, a nie drukuj_liczbę i drukuj_napis. Jednak napis musi być drukowany inaczej niż liczba, dlatego będą istniały dwie implementacje polecenia drukuj ale nazwanie ich wspólną nazwą tworzy wygodny abstrakcyjny interfejs niezależny od typu drukowanej wartości. Czasami nawet nie trzeba dostarczać różnych implementacji, przykładowo podczas implementacji stosu nie jest bardzo istotne jakiego typu wartości będą na nim przechowywane. Można napisać ogólne algorytmy obsługujące stos i ewentualne ukonkretnienie pozostawić systemowi. Mechanizmy umożliwiające takie udogodnienia nazywane są właśnie polimorfizmem. Wiele mechanizmów polimorficznych można napisać ręcznie, jednak wiąże się to często z koniecznością powielania kodu z jedynie niewielkimi poprawkami, a co za tym idzie rozrost kodu źródłowego i jego zaciemnienie. Istotą polimorfizmu jest to aby to system decydował o szczegółach, nie programista. Przez system należy tu rozumieć kompilator i system czasu wykonania. Niektóre decyzje mogą być podjęte już na etapie kompilacji, mamy wtedy do czynienia z polimorfizmem statycznym (czasu kompilacji). Czasami jednak decyzja musi zostać odwleczona do momentu wykonywania programu - polimorfizm dynamiczny (czasu wykonania). Przykładem statycznego może być przeciążanie operatorów - to którą wersję operatora należy wywołać można ustalić podczas kompilacji, natomiast dynamicznego - metody wirtualne - konkretna wersja metody może być ustalona dopiero w czasie wykonywania programu.
  • Na programação orientada a objetos, o polimorfismo permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam. Assim, um mesmo método pode apresentar várias formas, de acordo com seu contexto. O polimorfismo é importante pois permite que a semântica de uma interface seja efetivamente separada da implementação que a representa. O termo polimorfismo é originário do grego e significa "muitas formas" (poli = muitas, morphos = formas).
  • Полиморфи́зм — взаимозаменяемость объектов с одинаковым интерфейсом. Язык программирования поддерживает полиморфизм, если классы с одинаковой спецификацией могут иметь различную реализацию — например, реализация класса может быть изменена в процессе наследования . Кратко смысл полиморфизма можно выразить фразой: «Один интерфейс, множество реализаций». Полиморфизм — один из четырёх важнейших механизмов объектно-ориентированного программирования. Полиморфизм позволяет писать более абстрактные программы и повысить коэффициент повторного использования кода. Общие свойства объектов объединяются в систему, которую могут называть по-разному — интерфейс, класс. Общность имеет внешнее и внутреннее выражение. Внешне общность проявляется как одинаковый набор методов с одинаковыми именами и сигнатурами (именем методов и типами аргументов). Внутренняя общность есть одинаковая функциональность методов. Её можно описать интуитивно или выразить в виде строгих законов, правил, которым должны подчиняться методы. Возможность приписывать разную функциональность одному методу (функции, операции) называется перегрузкой метода.
  • Поліморфі́зм — концепція в програмуванні, відповідно до якої використовується спільний інтерфейс для обробки даних різних спеціалізованих типів. На противагу поліморфізму, концепція мономорфізму вимагає однозначного співставлення. В контексті об'єктно-орієнтованого програмування, найпоширенішим різновидом поліморфізму є здатність екземплярів підкласу грати роль об'єктів батьківського класу, завдяки чому екземпляри підкласу можна використовувати там, де використовуються екземляри батьківського класу.
dbpprop:hasPhotoCollection
dbpprop:reference
dbpprop:wikiPageUsesTemplate
rdfs:comment
  • In computer science, polymorphism is a programming language feature that allows values of different data types to be handled using a uniform interface. The concept of parametric polymorphism applies to both data types and functions. A function that can evaluate to or be applied to values of different types is known as a polymorphic function. A data type that can appear to be of a generalized type (e.g.
  • Polymorphie ist ein Konzept von Programmiersprachen. Es beschreibt die Fähigkeit eines Bezeichners – der einen Festwert oder eine Variable repräsentieren kann – sich abhängig von seiner Verwendung unterschiedlich darzustellen. Sie erlaubt dem Bezeichner, je nach Kontext einen unterschiedlichen Datentypen anzunehmen. Das Gegenteil der Polymorphie ist die Monomorphie. Die Variable oder das Literal sind dann während der gesamten Laufzeit von genau einem Typ.
  • En programación orientada a objetos se denomina polimorfismo a la capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en función de los parámetros utilizados durante su invocación. Un objeto polimórfico es una entidad que puede contener valores de diferentes tipos durante la ejecución del programa.
  • En informatique, le polymorphisme est l'idée d'autoriser le même code à être utilisé avec différents types, ce qui permet des implémentations plus abstraites et générales.
  • Polymorfisme staat voor veelvormigheid. In het geval van de informatica wordt hiermee bedoeld het gelijkvormig zijn van de interface van klassen en objecten, maar met verschillende implementaties. De gelijkvormigheid betreft dan voornamelijk het gebruik en de naamgeving van operaties. Dit wordt gezien als een zeer belangrijke factor om het objectgeöriënteerd programmeren goed tot zijn recht te laten komen, maar in feite behoort elke programmatuur dit toe te passen.
  • Polimorfizm to mechanizmy pozwalające programiście używać wartości, zmiennych i podprogramów na kilka różnych sposobów inaczej to możliwość wyabstrahowania wyrażeń od konkretnych typów. Podczas pisania programu wygodnie jest traktować nawet różne dane w jednolity sposób. Niezależnie czy należy wydrukować liczbę czy napis, czytelniej (zazwyczaj) jest gdy operacja taka nazywa się po prostu drukuj, a nie drukuj_liczbę i drukuj_napis.
  • Na programação orientada a objetos, o polimorfismo permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam. Assim, um mesmo método pode apresentar várias formas, de acordo com seu contexto. O polimorfismo é importante pois permite que a semântica de uma interface seja efetivamente separada da implementação que a representa.
  • Полиморфи́зм — взаимозаменяемость объектов с одинаковым интерфейсом. Язык программирования поддерживает полиморфизм, если классы с одинаковой спецификацией могут иметь различную реализацию — например, реализация класса может быть изменена в процессе наследования .
  • Поліморфі́зм — концепція в програмуванні, відповідно до якої використовується спільний інтерфейс для обробки даних різних спеціалізованих типів. На противагу поліморфізму, концепція мономорфізму вимагає однозначного співставлення.
rdfs:label
  • Type polymorphism
  • Polymorphie (Programmierung)
  • Polimorfismo (informática)
  • Polymorphisme (informatique)
  • ポリモーフィズム
  • Polymorfisme (informatica)
  • Polimorfizm (informatyka)
  • Polimorfismo
  • Полиморфизм (программирование)
  • Поліморфізм (програмування)
owl:sameAs
skos:subject
foaf:page
is dbpprop:redirect of
is dbpprop:typing of