/ ɪnkæpsjuleɪʃn̩ /
1. In object-oriented programming, the packaging of attributes (properties) and functionality (methods or behaviors) to create an object that is essentially a “black box”—one whose internal structure remains private and whose services can be accessed by other objects only through messages passed via a clearly defined interface (the programming equivalent of a mailbox or telephone line). Encapsulation ensures that the object providing service can prevent other objects from manipulating its data or procedures directly, and it enables the object requesting service to ignore the details of how that service is provided. See also information hiding.
2. In terms of the Year 2000 problem, a method of dealing with dates that entails shifting either program logic (data encapsulation) or input (program encapsulation) backward into the past, to a parallel year that allows the system to avoid Year 2000 complications. Encapsulation thus allows processing to take place in a “time warp” created by shifting to an earlier time before processing and—for accuracy—shifting output forward by the same number of years to reflect the actual date. See data encapsulation, program encapsulation.
Deals with combining related data fields and hiding the implementation details. The advantages of encapsulation include modularity and isolation of code from other code.
The localization of knowledge within a module. Because objects encapsulate data and implementation, the user of an object can view the object as a black box that provides services.