Object Oriented SAP ABAP – Objects and Classes

In questo tutorial, impareremo uno dei principi su cui è costruito ABAP-Programmazione orientata agli oggetti.

Impareremo cosa significa OOP e anche cosa comporta nel mondo di SAP ABAP.

Che cos’è OOP?

  • La programmazione orientata agli oggetti suddivide le attività in oggetti con dati e funzioni.
  • Questo metodo rende la programmazione software comprensibile, flessibile e riutilizzabile.
  • Object-Oriented Programing (OOP) è stato creato con semplicità ed eloquenza in mente.
  • Rende le persone comunicano chiaramente, scambiano informazioni e idee usando un linguaggio comune-il linguaggio degli oggetti.
  • Questi oggetti sono fatti di loro due caratteristiche principali – proprietà (dati) e di comportamento (o funzioni)

Le caratteristiche principali di OOP sono–

  1. astrazione dei Dati
  2. Incapsulamento
  3. Enfasi sui dati piuttosto che la procedura
  4. Utilizzo della reale entità del mondo chiamato ‘oggetto’
  5. privacy e protezione dei Dati

Rimanere aggiornato con le ultime tendenze della tecnologia
Join DataFlair Telegramma!!

POP vs OOP

La programmazione orientata alla procedura (POP) affronta i problemi in un metodo top-down. Sottolinea la procedura piuttosto che i dati in modo lineare.

vediamo alcune differenze tra POP e OOP–

POP OOP
POP sta per Procedura di programmazione Orientato OOP sta per programmazione Object-Oriented
Essa si concentra sulla procedura (a fare i compiti), piuttosto che di dati (attività) Si concentra sui dati/attività piuttosto che la procedura
POP segue top-down nel problem-solving OOP segue bottom-up di moda nel problem-solving
divide un programma in parti più piccole, chiamato funzioni o moduli divide un programma in parti più piccole, dette oggetti
le Funzioni di condivisione globale dei dati, e i dati non possono essere nascosti Funzioni non condividere i dati globali – si può decidere chi può accedere ai tuoi dati
Non c’è molta enfasi sulla protezione dei dati Uno dei principali punti di messa a fuoco in OOP è la protezione dei dati
per Estendere la funzionalità e l’aggiunta di dati è noioso e richiede tempo, è molto semplice per estendere le funzionalità e aggiungere nuovi dati, semplicemente l’aggiunta di nuovi oggetti
Concetti di ereditarietà, polimorfismo, incapsulamento non vengono utilizzati Concetti di ereditarietà, polimorfismo, incapsulamento, forma la base della OOP
E. g. C, Pascal, FORTRAN E. g. Java, Python, C++

OOP in ABAP

  • Inizialmente, SAP ha sviluppato ABAP come un linguaggio POP.
  • Tuttavia, col passare del tempo, lo hanno spostato e trasformato in un linguaggio OOP
  • Quindi, ABAP ora segue i principi dell’orientamento agli oggetti e dei paradigmi come gli oggetti.
  • Come parte di OOP, ABAP utilizza i concetti di ereditarietà, sovraccarico, nascondimento dei dati, ecc. per una migliore funzionalità.

cominciamo a comprendere alcuni termini di base della programmazione orientata agli oggetti

termini di Base per conoscere

TERMINE SIGNIFICATO
Oggetto un’entità del mondo reale di dati e di comportamento
Classe un complesso insieme di oggetti che contengono principalmente i campi di dati e le caratteristiche relative ai dati
Metodo il comportamento di un oggetto, cioè i moduli di funzione che l’oggetto esegue
Membro o il membro dei dati o di una funzione membro di una classe
Esempio sinonimo di oggetto, usato di solito come un ‘istanza di una classe’
la creazione di istanze di creazione di un nuovo oggetto di una classe

Oggetti in SAP ABAP

  • Un oggetto è un’entità del mondo reale che contiene dati e di comportamento.
  • Queste caratteristiche e questi comportamenti definiscono lo stato dell’oggetto e le azioni che l’oggetto eseguirà.
  • Un oggetto, come accennato in precedenza, è un blueprint o un’istanza di una classe.
  • Per esempio un dipendente, un libro, un albero di mele – tutti sono oggetti.

Creazione di un Oggetto in ABAP

vediamo come creare un oggetto in ABAP –

Sintassi:

DATA: <object_name> TYPE REF TO <class_name>. "Create reference variable CREATE Object: <object_name>. #Create object from ref. var.

Esempio:

DATA: dataflairobject TYPE REF TO dataflairclass. CREATE Object: dataflairobject.

esempio di Report:

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS ClassDataFlair Definition.Public Section.DATA: dataflairtext(45) VALUE 'Data Flair OOPS tutorial in ABAP: data.'.METHODS: DataFlairMethod.ENDCLASS.CLASS ClassDataFlair Implementation.METHOD DataFlairMethod.Write:/ 'Data Flair OOPS tutorial in ABAP: method.'.ENDMETHOD.ENDCLASS.START-OF-SELECTION.DATA: ClassDataFlair TYPE REF TO ClassDataFlair.CREATE Object: ClassDataFlair.Write:/ ClassDataFlair->dataflairtext.CALL METHOD: ClassDataFlair->DataFlairMethod.

di Uscita

Dati Flair OOPS tutorial in ABAP: i dati.
Data Flair OOPS tutorial in ABAP: metodo.

Classi in SAP ABAP

  • UNA classe è una collezione completa di oggetti
  • contiene i dati di membri (caratteristiche) e membro metodi (funzioni) insieme avvolto in un’unica entità chiamata oggetto
  • Classi in cui gli oggetti vengono creati e definiti
  • Possiamo anche definire e dichiarare i moduli di funzione in una classe
  • Siamo in grado di descrivere la privacy di una classe
  • che Cosa questo significa è, possiamo definire che tutti possono avere accesso ai dati particolari di una classe

Creazione di una Classe in ABAP

Creazione di una classe in ABAP ha due passi –

1. Dichiarazione

Sintassi–

CLASS <class_name> DEFINITION.//define classENDCLASS.

Esempio–

CLASS dataflairclass DEFINITION.//define classENDCLASS.

2. Definizione

Sintassi–

CLASS <class_name> IMPLEMENTATION.//define classENDCLASS.

Esempio–

CLASS dataflairclass IMPLEMENTATION.//define classENDCLASS.

Attributi in SAP ABAP

  • Gli attributi sono le caratteristiche della classe
  • Possono avere qualsiasi tipo di dati predefinito come P, F, I, ecc.
  • Dobbiamo dichiarare gli attributi nella sezione dichiarazione di classe
  • Gli attributi sono di due tipi:
    • Istanza: ciò include lo stato specifico dell’istanza dell’oggetto, le modifiche sono diverse per tutti gli oggetti e questo viene dichiarato dall’istruzione DATA
    • Statico: questo comprende anche i comuni di stato della classe per essere condiviso da tutte le istanze della classe, quindi quando si cambia uno stato, quindi tutti gli altri oggetti si può vedere il cambiamento, dichiarata dall’di CLASSE-DATI economico

Metodi SAP ABAP

  • un metodo è UN modulo o di una funzione
  • è il comportamento di un oggetto di una classe
  • Un metodo può accedere a qualsiasi caratteristica di una classe
  • contiene le azioni da eseguire da oggetti che richiamano alla classe
  • definizione del Metodo che può o non può contenere parametri che vengono passati quando il metodo è chiamato
  • Possiamo definire un metodo usando le istruzioni METHOD e ENDMETHOD

Sintassi:

METHOD…ENDMETHOD

Accesso agli attributi e ai metodi in SAP ABAP

1. I metodi e gli attributi sono accessibili dagli oggetti della classe

2. Gli specificatori di accesso (public, private e protected lavoro stesso modo come per la classe specificatori di accesso

  • Se dichiariamo loro pubblico, possono essere accessibili da qualsiasi classe
  • Quando dichiariamo privati, non può essere accessibile da qualsiasi classe
  • Se dichiariamo protette, si può accedere solo ereditando classi

vediamo un esempio di come la scrittura di classi, attributi e metodi per accedervi –

Esempio:

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section. Data: dataflairtext01 Type char25 Value 'Public Data Flair'. Methods dataflairmethod. PROTECTED Section. Data: dataflairtext02 Type char25 Value 'Protected Data Flair'. PRIVATE Section. Data: dataflairtext03 Type char25 Value 'Private Data Flair'.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod. Write: / 'Public Method:', / dataflairtext01, / dataflairtext02, / dataflairtext03. Skip. EndMethod.ENDCLASS.Start-Of-Selection. Data: Objectx Type Ref To dataflairclass. Create Object: Objectx. CALL Method: Objectx->dataflairmethod. Write: / Objectx->dataflairtext01.

di Uscita

Metodo Pubblico:
Dati Pubblici Flair
Dati Protetti Flair
Dati Privati FlairPublic Dati Flair

Esempio di Attributi Statici in SAP ABAP

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section. CLASS-DATA: dataflairname Type char45, dataflairdata Type I. Methods: dataflairmethod.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod. Do 4 Times. dataflairdata = 1 + dataflairdata. Write: / dataflairdata, dataflairname. EndDo. Skip. EndMethod.ENDCLASS.Start-Of-Selection. dataflairclass=>dataflairname = 'ABAP Object Oriented Programming'. dataflairclass=>dataflairdata = 0. Data: Object1 Type Ref To dataflairclass, Object2 Type Ref To dataflairclass. Create Object: Object1, Object2. CALL Method: Object1->dataflairmethod, Object2->dataflairmethod.

Costruttori in SAP ABAP

  • Costruttori sono particolari tipi di metodi di
  • Quando si crea un oggetto, abbiamo bisogno di inizializzare e costruttori di eseguire il processo di inizializzazione dati per gli oggetti
  • Il programma si chiama costruttori automaticamente quando un oggetto della classe viene creata
  • Il costruttore farà scattare l’operazione inclusa ogni volta che un oggetto viene creato in esecuzione

Esempio di ABAP Costruttori

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section. Methods: dataflairmethod, constructor.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod. Write: / 'This is the method'. EndMethod. Method constructor. Write: / 'This is the constructor'. EndMethod.ENDCLASS.Start-Of-Selection. Data Object1 Type Ref To dataflairclass. Create Object Object1.

Output

Questo è il costruttore

ME Operatore SAP ABAP

  • ogni volta che ci ridefinire una variabile all’interno di un metodo con un valore diverso, che metodo utilizzare il ridefinito il valore della variabile
  • Tuttavia, se si desidera accedere originariamente valore dichiarato, quindi è possibile utilizzare l’operatore MI
  • vediamo un esempio di utilizzo MI operator

Esempio a ME l’Operatore in ABAP

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section.Data dataflairtext Type char25 Value 'Here we have class value'. Methods dataflairmethod.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod.Data dataflairtext Type char25 Value 'Here we have method value'. Write: / ME->dataflairtext, / dataflairtext. ENDMethod.ENDCLASS.Start-Of-Selection. Data objectx Type Ref To dataflairclass. Create Object objectx. CALL Method objectx->dataflairmethod.

Output

Qui abbiamo il valore della classe
Qui abbiamo un metodo valore

Sommario

Così, in questo tutorial, abbiamo imparato a conoscere le basi su cui ABAP e molti altri linguaggi sono costruiti – programmazione orientata agli oggetti. Abbiamo imparato come l’orientamento agli oggetti è diverso dall’orientamento alla procedura, dalla sua importanza e dai termini più importanti.

Nella parte #2 di questo tutorial, ci immergeremo in ulteriori concetti di orientamento agli oggetti come ereditarietà, polimorfismo, ecc.

Leave a Reply

Il tuo indirizzo email non sarà pubblicato.