Delegation (object-oriented programming)
In object-oriented programming, delegation refers to evaluating a member (property or method) of one object (the receiver) in the context of another original object (the sender). Delegation can be done explicitly, by passing the sending object to the receiving object, which can be done in any object-oriented language; or implicitly, by the member lookup rules of the language, which requires language support for the feature. Implicit delegation is the fundamental method for behavior reuse in prototype-based programming, corresponding to inheritance in class-based programming. The best-known languages that support delegation at the language level are Self, which incorporates the notion of delegation through its notion of mutable parent slots that are used upon method lookup on self calls, an
- Comment
- enIn object-oriented programming, delegation refers to evaluating a member (property or method) of one object (the receiver) in the context of another original object (the sender). Delegation can be done explicitly, by passing the sending object to the receiving object, which can be done in any object-oriented language; or implicitly, by the member lookup rules of the language, which requires language support for the feature. Implicit delegation is the fundamental method for behavior reuse in prototype-based programming, corresponding to inheritance in class-based programming. The best-known languages that support delegation at the language level are Self, which incorporates the notion of delegation through its notion of mutable parent slots that are used upon method lookup on self calls, an
- DifferentFrom
- Forwarding (object-oriented programming)
- Has abstract
- enIn object-oriented programming, delegation refers to evaluating a member (property or method) of one object (the receiver) in the context of another original object (the sender). Delegation can be done explicitly, by passing the sending object to the receiving object, which can be done in any object-oriented language; or implicitly, by the member lookup rules of the language, which requires language support for the feature. Implicit delegation is the fundamental method for behavior reuse in prototype-based programming, corresponding to inheritance in class-based programming. The best-known languages that support delegation at the language level are Self, which incorporates the notion of delegation through its notion of mutable parent slots that are used upon method lookup on self calls, and JavaScript; see JavaScript delegation. The term delegation is also used loosely for various other relationships between objects; see delegation (programming) for more. Frequently confused concepts are simply using another object, more precisely referred to as consultation or aggregation; and evaluating a member on one object by evaluating the corresponding member on another object, notably in the context of the receiving object, which is more precisely referred to as forwarding (when a wrapper object doesn't pass itself to the wrapped object). The delegation pattern is a software design pattern for implementing delegation, though this term is also used loosely for consultation or forwarding.
- Is primary topic of
- Delegation (object-oriented programming)
- Label
- enDelegation (object-oriented programming)
- Link from a Wikipage to an external page
- web.media.mit.edu/~lieber/Lieberary/OOP/Delegation/Delegation.html%7Cdoi=10.1145/960112.28718
- web.archive.org/web/20070916214628/http:/www.codeproject.com/cpp/CppDelegateImplementation.asp
- perfectjpattern.sourceforge.net/delegates.html
- web.archive.org/web/20070701084227/http:/www.codeproject.com/cpp/FastDelegate.asp
- web.archive.org/web/20120329110415/http:/www.it-c.dk/people/kbilsted/graversen06thesis.pdf
- citeseer.ist.psu.edu/stein89shared.html
- Link from a Wikipage to another Wikipage
- Adapter pattern
- Addison-Wesley
- Aggregation (object-oriented programming)
- Aspect-oriented programming
- Category:Object-oriented programming
- Category:Prototype-based programming
- Class-based programming
- Continuation
- C Sharp (programming language)
- Delegate (CLI)
- Delegation (programming)
- Delegation pattern
- Dynamic binding (computer science)
- Forwarding (object-oriented programming)
- Henry Lieberman
- Hooking
- Immutable object
- Implementation inheritance
- Inheritance (object-oriented programming)
- Inheritance semantics
- Java (programming language)
- JavaScript
- MacOS
- Method (computer programming)
- NeXTStep
- Object (computer science)
- Object aggregation
- Object-oriented language
- Object-oriented programming
- Object schizophrenia
- Property (programming)
- Prototype-based programming
- Pseudocode
- Role-oriented programming
- Schizophrenia (object-oriented programming)
- Self (programming language)
- Self-call
- Slot (computer architecture)
- Software design pattern
- Virtual inheritance
- Wrapper function
- SameAs
- Delegació (programació)
- Delegación (informática)
- Delegation
- Delegation (object-oriented programming)
- Delegation (Softwareentwicklung)
- ETMQ
- Q1184069
- Делегирование (программирование)
- واگذاری (برنامهنویسی شیءگرا)
- 委托 (面向对象程序设计)
- 委譲
- Subject
- Category:Object-oriented programming
- Category:Prototype-based programming
- WasDerivedFrom
- Delegation (object-oriented programming)?oldid=1117145858&ns=0
- WikiPageLength
- 13815
- Wikipage page ID
- 604333
- Wikipage revision ID
- 1117145858
- WikiPageUsesTemplate
- Template:Citation needed
- Template:Cite book
- Template:Code
- Template:Distinguish
- Template:Efn
- Template:ISBN
- Template:Notelist
- Template:Other uses
- Template:Quote
- Template:Refbegin
- Template:Refend
- Template:Reflist
- Template:Sfn