Object-oriented programming An object is an abstract data type with the addition of polymorphism and inheritance . Rather than structure programs as code and data, an object-oriented system integrates the two using the concept of an “object”. An object has state (data) and behavior (code).