Which of the following characteristics of an object-oriented programming language enables the binding of data and the related code together into a single unit called object?