Revisa esta información.
Orientación a Objetos
Una técnica de programación en la que las soluciones reflejan objetos del mundo real.
¿Qué son los objetos?
Un objeto es una instancia de una clase. Por ejemplo, si "Animal" es una clase, un gato puede ser un objeto de esa clase.
Con respecto al código, objeto se refiere a un conjunto de servicios (métodos/atributos) y puede contener datos.
¿Qué son las clases?
Una clase define las propiedades de un objeto. Una clase puede ser instanciada tantas veces como se desee.
Ventajas del enfoque Orientado a Objetos
Más fácil de entender cuando el sistema es complejo.
Fácil de realizar cambios.
Encapsulamiento: Puede restringir la visibilidad de los datos (restringir el acceso a los datos).
Polimorfismo: Métodos con el mismo nombre se comportan de manera diferente en diferentes clases.
Herencia: Puede usar una clase existente para definir una nueva clase.
Polimorfismo y herencia conducen a la reutilización de código.
Clases en ABAP
Las clases en ABAP son locales o globales.
Las clases globales se declaran en el generador de clases (SE24).
Las clases locales se declaran dentro de los programas.
Componentes de una clase
Atributos: Campos de datos internos de la clase.
Los atributos pueden ser atributos de instancia - específicos para cada instancia de la clase (objeto) o atributos estáticos que son comunes a todas las instancias.
Métodos: Subrutinas/procedimientos en una clase que definen el comportamiento del objeto. Los métodos también pueden ser métodos de instancia o métodos estáticos.
Encapsulamiento en ABAP
El encapsulamiento se logra a través de la restricción en la visibilidad de atributos/métodos obtenidos mediante la definición de las secciones Pública, Privada y Protegida de una clase.
Sección Pública
Todos los componentes declarados en la sección pública son accesibles para todos los usuarios de la clase, y para los métodos de la clase y cualquier clase que herede de ella. Los componentes públicos de la clase forman la interfaz entre la clase y sus usuarios.
Sección Protegida
Todos los componentes declarados en la sección protegida son accesibles para todos los métodos de la clase y de las clases que heredan de ella.
Sección Privada
Los componentes declarados en la sección privada solo son visibles en los métodos de la misma clase.
Herencia en ABAP
La herencia le permite derivar una clase basada en una clase ya existente.
Todas los atributos/métodos de la superclase se convierten en propiedad de la subclase también. Solo los atributos/métodos públicos y protegidos son visibles en la subclase.
Polimorfismo en ABAP
Cuando los métodos con el mismo nombre se comportan de manera diferente bajo diferentes circunstancias, lo llamamos polimorfismo.
Los métodos redefinidos en una subclase son un ejemplo de polimorfismo.
Interfaces
Las interfaces se utilizan para definir el modelo de una clase.
Al igual que las clases, pueden ser locales o globales.
Las interfaces globales se definen a través de SE24 y las interfaces locales se definen en el programa.
Por favor, consulta este documento en línea (comenzando en la página 1291).
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCABA/BCABA.pdf
También revisa estos enlaces.
http://help.sap.com/saphelp_nw2004s/helpdata/en/ce/b518b6513611d194a50000e8353423/frameset.htm
http://www.sapgenie.com/abap/OO/
http://www.futureobjects.de/content/intro_oo_e.html
http://www.sap-img.com/abap/business-add-in-you-need-to-understand-abap-oo-interface-concept.htm
/people/ravikumar.allampallam/blog/2005/02/11/abap-oo-in-action
Consulta los siguientes enlaces,