Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Introduzione all'Programmazione Orientata agli Oggetti in C++: Concetti Base, Appunti di Informatica

Una introduzione alla programmazione orientata agli oggetti in c++ attraverso l'esame dei concetti base come astrazione, classe, oggetto, attributi, metodi, costruttore, modificatori, overload, override, identificatori accesso, encapsulamento, ereditarietà e polimorfismo.

Tipologia: Appunti

2022/2023

Caricato il 16/10/2022

aurora.binda
aurora.binda 🇮🇹

4.4

(18)

30 documenti

1 / 3

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
PROGRAMMAZIONE A OGGETTI
Astrazione = processo di semplificazione della realtà complessa
Classe = è lo schema di base da cui si creano gli oggetti; il concetto di classe è analogo a quello di tipo per le
variabili si dice infatti che l’oggetto è di tipo classe
class MyClass { // creazione classe
public: // identificatore accesso
int myNum; // attributo
};
Oggetto = rappresenta l’entità del problema che si vuole automatizzare con l’informatica ed è definito da
attributi e metodi, è un’istanza della classe
class MyClass {
public:
int myNum;
};
int main {
MyClass myObj; // creazione oggetto di tipo MyClass
myObj.myNum = 15; // valore allattributo
cout << myObj.myNum ; // stampa attributo
return 0;
};
Attributi = sono gli elementi che caratterizzano l’oggetto, utili per descrivere le sue caratteristiche e definire
il suo stato
Metodi = sono i comportamenti e le funzionalità che l’oggetto mette a disposizione, le funzioni
appartenenti alla classe possono essere definite all’interno della classe o all’esterno
class MyClass {
public:
void myMethod() { // metodo
cout << "Hello World!";
}
};
int main() {
MyClass myObj;
myObj.myMethod(); // chiamare il metodo
return 0;
}
Costruttore = è un metodo speciale che viene chiamato automaticamente quando viene creato un oggetto
di una classe. Ha lo stesso nome della classe, non ha tipo e ha visibilità public
class MyClass {
public:
MyClass() { // costruttore
cout << "Hello World!";
}
};
int main {
MyClass myObj;
return 0;
};
pf3

Anteprima parziale del testo

Scarica Introduzione all'Programmazione Orientata agli Oggetti in C++: Concetti Base e più Appunti in PDF di Informatica solo su Docsity!

PROGRAMMAZIONE A OGGETTI

Astrazione = processo di semplificazione della realtà complessa

Classe = è lo schema di base da cui si creano gli oggetti; il concetto di classe è analogo a quello di tipo per le

variabili si dice infatti che l’oggetto è di tipo classe

class MyClass { // creazione classe public: // identificatore accesso int myNum; // attributo };

Oggetto = rappresenta l’entità del problema che si vuole automatizzare con l’informatica ed è definito da

attributi e metodi, è un’istanza della classe

class MyClass { public: int myNum; }; int main { MyClass myObj; // creazione oggetto di tipo MyClass myObj.myNum = 15 ; // valore all’attributo cout << myObj.myNum ; // stampa attributo return 0 ; };

Attributi = sono gli elementi che caratterizzano l’oggetto, utili per descrivere le sue caratteristiche e definire

il suo stato

Metodi = sono i comportamenti e le funzionalità che l’oggetto mette a disposizione, le funzioni

appartenenti alla classe possono essere definite all’interno della classe o all’esterno

class MyClass { public: void myMethod() { // metodo cout << "Hello World!"; } }; int main() { MyClass myObj; myObj.myMethod(); // chiamare il metodo return 0 ; }

Costruttore = è un metodo speciale che viene chiamato automaticamente quando viene creato un oggetto

di una classe. Ha lo stesso nome della classe, non ha tipo e ha visibilità public

class MyClass { public: MyClass() { // costruttore cout << "Hello World!"; } }; int main { MyClass myObj; return 0 ; };

Modificatori = servono per utilizzare gli attributi che vengono dichiarati privati (metodi get e set)

Overload = definire più versioni dello stesso metodo cambiando il numero, tipo di parametri e visibilità. Può

essere fatto nella stessa classe o nelle classi derivate

Override = quando una classe derivata ha un metodo identico a un metodo già presente nella classe madre

(stesso nome, parametri, tipo di ritorno e visibilità)

Identificatori accesso = in c++ esistono tre diversi tipi di visibilità: private (usati solo da funzioni della classe),

public (usati da qualsiasi funzione) e protected (usati da funzioni della classe e dalle classi derivate del

superclasse)

Incapsulamento = proprietà degli oggetti di incorporare al loro interno sia gli attributi che i metodi. Per

assicurare che i dati siano nascosti bisogna dichiarare gli attributi di classe come private, usando poi i

metodi set e get diventano leggibili e modificabili da altri

class Impiegato { private: int salary; //attributo privato public: void setSalary (int s) { //metodo set salary = s; } int getSalary() { //metodo get return salary; } }; int main() { Impiegato myObj; myObj.setSalary ( 50000 ); cout << myObj.getSalary(); return 0 ; }

Ereditarietà = capacità di costruire nuove classi utilizzando quelle già esistenti: la sottoclasse è la classe

discendente che eredita da un’altra classe e il superclasse è la classe madre di una nuova classe. Esistono

diversi tipi di ereditarietà: multilivello (una classe può derivare da una classe) e multipla (una classe può

derivare da più di una classe usando un elenco separato da virgole)

Polimorfismo = possibilità per i metodi di assumere forme, ossia implementazioni, diverse; si verifica

quando abbiamo molte classi che sono correlate tra loro per eredità e utilizza i metodi ereditati dal

superclasse per eseguire compiti diversi.

class Animal { //superclasse public: void animalSound() { //metodo cout << "The animal makes a sound”; } }; class Pig : public Animal { //sottoclasse public: void animalSound() { cout << "The pig says: wee wee"; } };