🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Las propiedades de la programación orientada a objetos

ABAP Las propiedades de la programación orientada a objetos

ABAP Las propiedades de la programación orientada a objetos

1-Las propiedades de la programación orientada a objetos

Existen 3 propiedades fundamentales que presentan los objetos.

  • Encapsulación
  • Herencia
  • Polimorfismo

2-Encapsulación

Conocido como ocultamiento, se refiere a que todos los objetos restringen la visibilidad de sus recursos ( atributos y métodos) al resto de los usuarios.

Las tres áreas de visibilidad (publica, privada y protegida ) son la base de la encapsulación.

Cada objeto posee una interfase que determina la manera de interactuar con el, la implementación del objetos (su interior) es encapsulada) lo que quiere decir que desde afuera el objeto es invisible simplemente se usa .

Cuando se defina una clase hay ue tener cuidado en el diseño de los componentes públicos, intentando declarar tan pocos como sea posible. Los componentes publicado de la clases globales no pueden ser cambiados una vez que se ha liberado la clase.

EJ: los atributos públicos son visibles externamente y forman parte de la interface entre un objeto y sus usuarios. Si se quiere encapsular el estado de un objeto completamente no se tiene que declarar ningún atributo publico. Ademas de definir la visibilidad de un atributo, se pueden proteger también de los cambios usando la adición READ-ONLY.

3-Herencia

Es la capacidad que tienen una clase de heredar las propiedades y métodos de otra clase.

La herencia permite crear una nueva clase a partir de una existente, heredando la clase nueva sus propiedades. Esto se realiza añadiendo la adición INHERENTING FROM a la sentencia de definición de la clase.

CLASS <subclass> DEFINITION INHERITING FROM <superclass>.

La nueva clase hereda todos los componentes de la clase ya existente.

La clase original se conoce como la superclase de la nueva clase que será subclase.

Si no se añade ninguna declaración a la subclase, esta contiene los mismos componentes que la superclase, solo los componentes punticos y protegidos de la superase son visibles a la subclase. Aunque los componentes privados de la superase existen en la subclase, no son visibles.

Se pueden declarar componentes privados en un subclase que tengan los mismos nombres que componentes privados de la superclase. cada clase trabaja con sus propios componentes privados. Los métodos que una subclase hereda de una superclase usan los atributos privados de la superase y no ningún componente privado de la supeclase con el mismo nombre.

CLASS vehiculo DEFINITION.

PUBLIC SECTION.

METHODS: aumentar_velocidad,

Disminuir_velocidad.

PROTECTED SECTION.

DATA km TYPE i.

ENDCLASS.

CLASS vehiculo IMPLEMENTACION.

METHOD aumentar_velocidad.

ADD 10 to km.

ENDMETHOD.

METHOD disminuir_velocidad.

SUBSTRACT 10 FRIM km.

ENDMETHOD.

ENDCLASS.

CLASS bicicleta DEFINITION INHERITING FROM vehiculo.

PUBLIC SECTION.

DATA desgaste_camara(5) TYPE c.

ENDCLASS.

La Especialización es la relación donde la subclase hereda las principales características de la superclase.

La Generalización es lo inverso. Ocurre si la superclase no tiene una sección privada la subclase es una réplica exacta de la superclase. Podemos añadir nuevos componentes en la subclase, convirtiendo así a la subclase en una versión especializada de la superclase.

Se obtiene un nuevo nivel de especialización si la subclase es a su vez una superclase de otras subclases.

Tipos de herencias

Existen dos tipos:

  • Simple: una clase puede tener mas de una subclase de las cuales es superase, pero solo puede tener una superase de la cual es subclase.
  • Múltiple: una clase hereda de varias superclases.

Cuando una subclase hereda de una superase que a su vez hereda la otra superclase de la cual es subclase, se tomar una estructura de árbol en la cual el grado de especialización aumenta con cada nivel jerárquico que se añade. A la inversa las clases se hacen mas generales hasta que se alcanzan el nodo del árbol de herencia.

El nodo raíz de todos los arboles de herencia en los objetos ABAP es la clase definida vacía OBJECT.

Esta es la mas general de todas las clases posibles ya que no contiene ni atributos ni métodos

Cuando se define una nueva clase no se tiene que especificar explícitamente esta clase como superclases, esta relación esta definida implícitamente.

Dentro de un árbol de herencia, dos nodos adyacentes son superclases y la superase directamente uno de otro. Las declaraciones de componentes en una subclase están distribuidos a través de todos los niveles superiores en el arbole de herencia.

Una clase abstracta es un tipo especial de clase que no se puede instanciar. Solo se puede crear una instancia de las subclases de la clase abstracta, si éstas no son abstractas. Una clase abstracta no se puede instanciar. En la definición de la clase, con la palabra clave “ABSTRACT” se define una clase abstracta. Una clase final es la última en el árbol de clases y no puede tener herencia. Para indicar a una clase que no se puede heredar de ella, se indica en la definición de la clase la palabra “FINAL”.

4-Polimorfismo

Significa que métodos que se llaman exactamente igual pueden comportarse de manera distinta en clases diferentes. También se lo conoce como Redefinición.

El polimorfismo consiste en conseguir que un objeto de una clase se comporte como un objeto de cualquiera de sus subclases, dependiendo de la forma de llamar a los métodos de dicha clase o subclases.

Todas las subclases contienen los componentes de todas las clases existentes entre ellas mismas y el nodo raíz del árbol de herencia. La visibilidad de un componente no puede ser cambiada nunca.

Se puede usar la adición REDEFINITION en la sentencia METHODS para redefinir un método público o protegido dependiente de instancia en una subclase y hacer que realice una función más especializada.

cuando se redefine un método no se puede cambiar su interface, el método mantiene el mismo nombre y la misma interface de parámetros, pero tiene una nueva implementación. La declaración y la implementación de un método en una superclase no se ve afectada cuando se redefine un método en una subclase.

La implementación de la redefinición en la subclase “oculta” la implementación original en la superclase.

Cualquier referencia que apunte a un objeto de la subclase usa el método redefinido, incluso si la referencia fue definida con referencia a la superclase. Esto se aplica particularmente a la referencia a sí mismo me->.

Si por ejemplo un método M1 de una superclase contiene una llamada:

CALL METHOD [ME -> ]M2

Y M2 está redefinido en una subclase, la llamada a M1 desde una instancia de la superclase hará que el método original M2 sea llamado, mientras que la llamada a M1 desde una instancia de la subclase hará que el método redefinido M2 sea llamado (llaman a ‘distintos’ métodos aunque tengan el mismo nombre).

Dentro de un método redefinido se puede usar la referencia SUPER-> para acceder al método ‘oculto’. Esto permite usar la funcionalidad existente en el método de la superclase sin tener que codificarla de nuevo en la subclase.

El caso por excelencia en donde se aplica el polimorfismo o la redefinición es cuando tenemos una clase y una subclase y ambas tienen definido un mismo método, pero cada una de ellas presenta una declaración particular del método, adaptado a sus propias necesidades.

Por ejemplo supongamos que tenemos la clase VEHICULO y las subclases CAMION, BARCO y AVION.

En la clase VEHICULO podemos tener definido el método CARGAR_NAFTA y luego en cada subclase tendremos una implementación particular del método, ya que no es exactamente lo mismo cargar nafta en un CAMION, en un BARCO o en un AVION.


 

 

 


Sobre el autor

Publicación académica de Ninoska Marquez, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Ninoska Marquez

Profesión: Ing. de Sistema - Honduras - Legajo: FU90M

✒️Autor de: 99 Publicaciones Académicas

🎓Egresado de los módulos:

Presentación:

Me llamo ninoska marquez tengo 44 anos, tengo varios años de trabajar para una empresa donde me desempeño con el cargo de programador junior, soy perseverante, amable, tranquila

Certificación Académica de Ninoska Marquez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las propiedades de la programación orientada a objetos" de la mano de nuestros alumnos.

SAP Master

Lección 4: Propiedades de la Programación Orientada a Objetos. 1.- Las propiedades de la programación orientada a objetos. Existen tres propiedades fundamentales que presentan los objetos: Encapsulación - Tambien se conoce como "Ocultamiento", se refiere a que todos los objetos restringen la visibilidad de sus recursos (atributos y métodos) al resto de los usuarios. Herencia - Es la capacidad que tiene una clase de heredar las propiedades y métodos de otra clase. Polimorfismo - Significa que métodos que se llaman exactamente igual pueden comportarse de manera distinta en clases diferentes. También se le conoce como "Redefinición". 2.- Encapsulación....

Acceder a esta publicación

Creado y Compartido por: Calixto Gutiérrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Las propiedades de la programación orientada a objetos Encapsulación: También conocida como ocultamiento, se refiere a que todos los objetos restringen la visibilidad (pública, privada y protegida) de sus recursos (atributos y métodos) al resto de los usuarios. Además de definir la visibilidad de un atributo, se puede proteger también de los cambios usando la adición READ-ONLY. Herencia: Es la capacidad que tiene una clase de heredar las propiedades y métodos de otra clase. Se realiza añadiendo la adición INHERITING FROM. La clase original se conoce como la superclase de la nueva clase que será la subclase. Tipos: Simple: una clase puede tener más de...

Acceder a esta publicación

Creado y Compartido por: David De Jesùs Restrepo Cañas

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Propiedades de la Programación Orientada a Objetos Propiedades de la POO 1. Encapsulación (Ocultamiento): Todos los objetos restringen la visibilidad de sus recursos (pública, privada y protegida) Los objetos se usan mediante una interfaz, pero su interior es invisible, está encapsulado. Componentes púbicos: Clases globales. No se pueden modificar una vez liberada la clase. READ-ONLY para especificar que un atributo no se puede modificar. 2. Herencia Capacidad de una clase para heredar propiedades y métodos de otra clase. INHERITING FROM para crear una clase a partir de otra heredando sus propiedades. CLASS <subclass> DEFINITION INHERITING FROM <superclass>....

Acceder a esta publicación

Creado y Compartido por: Helen Silva Ruiz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

PROPIEDADES DE LA POO. ** Encapsulamiento. ** Herencia. **Polimorfismo. Encapsulamiento: se refiere a que todos los objetos restringen la visibilidad de sus recursos al resto de os usuarios. Herencia; Es la capacidad que tiene una clase de heredar las propiedades y métodos de otra. Polimorfismo: son métodos que tienen el mismo nombre pero su comportamiento es diferente.

Acceder a esta publicación

Creado y Compartido por: Juan Santamaria Borja

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Las propiedades de la POO ENCAPSULACION: Conocido como ocultamiento, se refiere a que todos los objetos restringen la visibilidad de sus recursos (atributos y metodos) al resto de los usuarios. HERENCIA: Es la capacidad que tiene una clase de heredar las propiedades y metodos de otra clase. LA CLASE ORIGINAL SE CONOCE COMO LA SUPERCLASE DE LA NUEVA CLASE QUE SERA LA SUBCLASE EL NODO RAIZ DE LOS ARBOLES DE HERENCIA EN LOS OBJETOS ABAP ES LA CLASE PREDEFINIDA VACIA OBJECT. POLIMORFISMO: Significa que metodos que se llaman igual pueden comportarse de manera distinta en clases diferentes, tambien se lo conoce como REDEFINICION.

Acceder a esta publicación

Creado y Compartido por: Ernesto Aristides Romano

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Propiedades de la Programación Orientada a Objetos 1- Las Propiedades de la POO Encapsulación. Herencia. Poliformismo. 2- Encapsulación (u Ocultamiento) Se refiere a que todos los Objetos restringen la Visibilidad de sus recursos (Atributos y Métodos) al resto de los Usuarios. Las Secciones Pública, Protegida y Privada son la base de la Encapsulación. Cada Objeto posee una Interfase que determina la manera de interactuar con él. La Implementación del Objeto (su interior) es Encapsulada, o sea que desde fuera es invisible. Sólo se usa. Como los Componentes Públicos de las Clases Globales no pueden ser cambiados una vez que se las liberó,...

Acceder a esta publicación

Creado y Compartido por: Victor Norberto Levi

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Lección 4: Propiedades de la programación Orientada a Objetos: 1 Las propiedades de la programación orientada a Objetos. Existen tres propiedades que presentan los objetos: Ø Encapsulamiento Ø Herencia Ø Polimorfismo 2 Encapsulamiento: También se conoce como “Ocultamiento” se refiere a que todos los objetos restringen l visibilidad de sus recursos (atributos y métodos) al resto de los usuarios Las tres áreas de visibilidad (pública, privada y protegida) son la base de la encapsulación Cada objeto posee una interface que termina la manera de interactuar con el. La implementación del objeto (su interior) es encapsulada, lo que quiere decir...

Acceder a esta publicación

Creado y Compartido por: Jhon Deibys Cano Pineda

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

1.- Las Propiedades de la Programación Orientada a Objetos. Los objetos presentan 3 propiedades fundamentales, estas son: Encapsulación. Herencia. Polimorfismo. 2.- Encapsulación u Ocultamiento. Se refiere a que todos los objetos restringen la visibilidad de sus recursos (atributos y métodos) al resto de los usuarios. 3 áreas de visibilidad son la base de la encapsulación (pública, privada y protegida). Cada objeto posee una interfase que determina la manera de interactuar con él. La implementación del objeto (su interior) es encapsulada, es decir, que desde fuera el objeto en invisible, simplemente se usa. CLASS c1 DEFINITION. PUBLIC SECTION....

Acceder a esta publicación

Creado y Compartido por: Gustavo Alberto Ramirez Franco

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

1° Las Propiedades de la Programación Orientada a Objetos Existen tres propiedades fundamentales que presentan los objetos. Ellas son: Encapsulación Herencia Polimorfismo 2° Encapsulación: Tambien conocido como "Ocultamiento", se refiere a que todos los objetos restrigen la visibilidad de sus recursos (Atributos y metodos) al resto de los usuarios. Las tres areas de visibilidad (publica privada y protegida) son la base de la encapsulacion. Cada objeto posee una interfase que determina la manera de interactuar con él, La implementacion del objeto (su interior) es encapsulada, lo que quiere decir que desde fuera el objeto es invisible, simplemente se usa. Cuando se define una clase hay que...

Acceder a esta publicación

Creado y Compartido por: Matias Giorgieff

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

PROPIEDADES POO: 3 propiedades: ENCAPSULACION: conocido como OCULTAMIENTO, se refiere a que todos los objetos restringen la visibilidad de sus recursos (atributos y metodos) al resto de los usuarios. Las 3 areas de visibilidad (public, privada y protegida) son la base de la encapsulacion. Cada objeto posee una interfase que determina la forma de interactuar con el, la implementeacion del objeto es encapsulada, o sea desde afuera el objeto es invisible, solo se usa. Se puede proteger un atributo de los cambios usando la adicion READ-ONLY. HERENCIA: capacidad que una clase de heredar las propiedades y metodos de otra clase. Permite crear una nueva clase a partir de una existente, heredando la nueva clase sus propiedades, se realiza añadiendo...

Acceder a esta publicación

Creado y Compartido por: Jose Ignacio Rodini

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!