>>9
Abstract data types are not restricted to OOP methodologies. So no on that. I'm not sure what you mean by hierarchical data types, nevertheless I'd probably consider the following to be OOP: -
Objects
Inheritance
Dynamic dispatch
Encapsulation
Subtype polymorphism