PROMO JULIO en CVOSOFT United States Of America: 💎Calidad, 🔥Bonificaciones, 🥶Precios Congelados y MÁS!

 X 

✒️ABAP POO La Herencia

ABAP POO La Herencia

ABAP POO La Herencia

Bien, hice el ejercicio un poco diferente.

Tomé la definición previa de Vehiculo que ya habiamos hecho y le cargué en un INCLUDE y le agregué los componentes que indicaba el ejercicio.

E hice el programa con lo solicitado, con algunos agregados.

SPAN { font-family: "Courier New"; color: #000000; background: #FFFFFF; } .L0S31 { font-style: italic; color: #808080; } .L0S55 { color: #800080; } Los KM del camion los pude obtener ya sea por un método que hice para que los devolviera o bien llamando directamente al atributo KM de la clase. Les pongo los 2 ejemplos.

KM_CAMION = obtener_KM( ). " No hace falta referencia para llamar metodo de la clase.
KM_CAMION = KM. " También se puede obtener directamente el atributo de la clase.

Lo activé y funciona perfectamente.

INCLUDE Z_CLASS_VEHICULO

SPAN { font-family: "Courier New"; color: #000000; background: #FFFFFF; } .L0S31 { font-style: italic; color: #808080; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; } .L0S55 { color: #800080; } *&---------------------------------------------------------------------*
*& Include Z_CLASS_VEHICULO
*&---------------------------------------------------------------------*
CLASS Vehiculo DEFINITION.
PUBLIC SECTION.

DATA: color Type String,
marca Type String,
modelo Type String,
velocidad Type String,
anio_fabricacion Type String,
Km Type I.

CLASS-DATA: nro_vehiculos Type I.

METHODS: Constructor,
asignar_anio_fabricacion
IMPORTING a_anio_fabricacion Type String,
disminuir_velocidad
IMPORTING a_velocidad Type String,
asignar_tipo
IMPORTING a_marca Type String
a_modelo Type String,
asignar_km_iniciales
IMPORTING pKM Type I,
incrementar_km,
Obtener_KM
RETURNING VALUE(pKM) Type I.

CLASS-METHODS: obtener_nro_vehiculos
RETURNING VALUE(nro) Type I.

ENDCLASS.


CLASS Vehiculo IMPLEMENTATION.
METHOD CONSTRUCTOR.
color = 'Verde'.
marca = 'Renault'.
modelo = '12'.
ENDMETHOD.

METHOD asignar_anio_fabricacion.
anio_fabricacion = a_anio_fabricacion.
ENDMETHOD.

METHOD disminuir_velocidad.
velocidad = a_velocidad.
ENDMETHOD.

METHOD asignar_tipo.
marca = a_marca.
modelo = a_modelo.
ENDMETHOD.

METHOD obtener_nro_vehiculos.
nro = nro_vehiculos.
ENDMETHOD.

METHOD asignar_km_iniciales.
KM = pKM.
ENDMETHOD.

METHOD incrementar_km.
KM = KM 1.
ENDMETHOD.

METHOD Obtener_KM.
pKM = KM.
ENDMETHOD.

ENDCLASS.

PROGRAMA Z

SPAN { font-family: "Courier New"; color: #000000; background: #FFFFFF; } .L0S31 { font-style: italic; color: #808080; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; } .L0S55 { color: #800080; } .L0S70 { color: #808080; } REPORT ZPRUEBA_HERENCIA_RQ48L.

INCLUDE z_class_vehiculo.

CLASS Camion DEFINITION INHERITING FROM Vehiculo.
PUBLIC SECTION.
DATA: Km_Camion Type I.

METHODS: Ver_KM.
ENDCLASS.

CLASS Camion IMPLEMENTATION.
METHOD Ver_KM.
KM_CAMION = obtener_KM( ). " No hace falta referencia.
Write: / 'KMs Recorridos:',KM_Camion.
ENDMETHOD.
ENDCLASS.


Data:
oCamion Type REF TO Camion,
KM_Inic Type I Value 5.

START-OF-SELECTION.

CREATE OBJECT oCamion.
" Indico Modelo
oCamion->asignar_tipo( a_marca = 'Mercedes Benz'
a_modelo = '1114' ).
" Km Iniciales
oCamion->asignar_km_iniciales( pKM = KM_Inic ).

Do 20 times.
oCamion->incrementar_km( ).
Enddo.

oCamion->Ver_KM( ).


 

 

 


Sobre el autor

Publicación académica de Alfredo César, en su ámbito de estudios para el Máster ABAP POO.

SAP Senior

Alfredo César

Profesión: Analista de Sistemas - Argentina - Legajo: RQ48L

✒️Autor de: 33 Publicaciones Académicas

🎓Egresado de los módulos:

Certificación Académica de Alfredo César

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "La Herencia" de la mano de nuestros alumnos.

Herencia: Es la capacidad que tiene una clase de heredar los atributos y metodos de otra clase. Declaracion de Herencia: CLASS <subclass> DEFINITION INHERITING FROM <superclass>. La nueva clase hereda todos los componentes de la clase ya existente. Los componentes privados existen en la subclase pero no son visibles. Tipos de Herencia: Simple: Una clase puede tener mas de una subclase de las cuales es superclase, pero solo puede tener una superclase de la cual es subclase. Multiple: Una clase hereda de varias superclases. El nodo raiz de todos los arboles de herencia en los objetos abap es la clase predefinida vacia OBJECT.

Acceder a esta publicación

Creado y Compartido por: Juan Jose Pujol Diaz

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

SAP Senior

Herencia: mecanismo mediante el cual una clase hereda propiedades de otra clase. La subclase puede agregar nuevos componentes (atributos y metodos) y reemplazar metodos heredados. Definicion de subclase en ABAP: CLASS <subclass> definition inheriting from <super class> . Solo los componentes publicos y protegidos son visibles a la subclase. Los privados no son accesibles. Los metodos heredados de una super clase trabajan en una sub clase con los atributos privados de la super clase y no con los atributos privados de la subclase que utilicen el mismo nombre. Herencia Simple existe en ABAP. 1 SUPER CLASE --> N CLASES. (Relacion 1 a N). Herencia Multiple no existe en ABAP. Se utilizan interfaces para simularla. Object es el nodo...

Acceder a esta publicación

Creado y Compartido por: Regulo Argotte

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

SAP Expert


Herencia: es la capacidad que tiene una clase de heredar los atributos y métodos de otra clase. La Especialización es la relación donde una subclase hereda las principales características de la superclase. La subclase puede agregar nuevos componentes (atributos y métodos) y reemplazar las implementaciones con los métodos heredados. La relación inversa se llama Generalización. Las ventajas de la herencia son que los componentes comunes sólo existen una única vez en la superclase (se mantienen centralmente) y los componentes de las superclases están disponibles desde todas las subclases (se evita implementación redundante). La herencia se declara con INHERITING...

Acceder a esta publicación

Creado y Compartido por: Daniel Alejandro Monteros Segura

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

SAP Senior

HERENCIA Es la capacidad de una clase de heredar los atributos y método de una clase, es decir, se puede crear una nueva a partir de una existente. Especialización: relación en donde una clase (subclase) hereda las características de otra (superclase) La subclase puede agregar nuevos componentes (atributos y métodos) Generalización: la superclase hereda las características de la subclase. Ventajas - Los componentes comunes solo existe una vez - Los componentes en las superclases están disponibles para las subclases (evitar redundancia) DECLARACION DE HERENCIA Si no se añade declaración en la subclase, tendrá los mismos métodos que la superclase....

Acceder a esta publicación

Creado y Compartido por: Julio Villalta / Disponibilidad Laboral: FullTime

 


 

👌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!