Khác biệt giữa bản sửa đổi của “Đa hình (khoa học máy tính)”

Nội dung được xóa Nội dung được thêm vào
AlphamaEditor, Executed time: 00:00:08.1736966 using AWB
Không có tóm lược sửa đổi
Thẻ: Trình soạn thảo mã nguồn 2017
Dòng 1:
{{confusion|Virus đa hình}}
Trong [[ngôn ngữ lập trình]] và [[lý thuyết kiểu]], '''đa hình''' (tiếng Anh: ''polymorphism'', từ tiếng Hy Lạp [[wikt:πολύς#Ancient Greek|πολύς]], ''polys'', "nhiều" và [[wikt:μορφή#Ancient Greek|μορφή]], ''morphē'', "hình dạng") là việc cung cấp một [[giao diện (điện toán)|giao diện]] cho các thực thể thuộc nhiều [[kiểu dữ liệu|kiểu]] khác nhau.<ref>
{{chú thích web | url=http://www.stroustrup.com/glossary.html#Gpolymorphism | author=Bjarne Stroustrup | title=Bjarne Stroustrup's C++ Glossary | date=ngày 19 tháng 2 năm 2007 | quote=polymorphism – providing a single interface to entities of different types.}}</ref> Một '''kiểu đa hình''' là kiểu mà những toán tử của nó có thể được áp dụng cho các giá trị của kiểu khác, hoặc các kiểu.<ref name="Luca">{{Cite journal | last1 = Cardelli | first1 = Luca| authorlink1 = Luca Cardelli| last2 = Wegner | first2 = Peter| authorlink2 = Peter Wegner| doi = 10.1145/6041.6042| title = On understanding types, data abstraction, and polymorphism| journal = [[ACM Computing Surveys]]| issn = 0360-0300| volume = 17| issue = 4| pages = 471–523| date=December 1985 | url = http://lucacardelli.name/Papers/OnUnderstanding.A4.pdf| publisher = [[Association for Computing Machinery|ACM]]| location = New York, NY, USA| ref = harv}}: "Polymorphic types are types whose operations are applicable to values of more than one type."</ref> Có nhiều loại đa hình cơ bản, gồm: ''[[đa hình tùy biến]]'' (''ad hoc polymorphism''), ''[[đa hình tham số]]'' (''parametric polymorphism'') và ''[[đa hình dẫn xuất]]'' (''subtyping'', hay còn gọi là ''subtype polymorphism'', ''inclusion polymorphism'').