Diferència entre revisions de la pàgina «DAM-M3-UF4. Caracterització i ús d'objectes»

De Wiki IES Marianao. Departament Informàtica
Dreceres ràpides: navegació, cerca
(Descripció dinàmica. Mètodes)
(Pàgina blanquejada)
 
(Hi ha 25 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
torna [[ M3 - Programació ]]
 
  
==  Programació Orientada a objectes (POO) ==
 
 
La POO és un paradigma de programació.
 
 
Es representa el sistema com una col·lecció d’objectes amb certes propietats.
 
 
Aquests reben estímuls externs o esdeveniments interns, i en resposta:
 
 
* Intercanvien informació
 
* Canvien el seu '''estat '''(Les seves propietats)
 
* Produeixen resultats observables (Informació per consola, creació d'un botó, etc...)
 
 
Les responsabilitats del Sistema queden així repartides entre els objectes que col·laboren entre ells
 
 
Per comunicar-se els objectes intercanvien '''''missatges'''''.
 
 
==  Les Classes i els objectes ==
 
 
Una '''classe''' descriu la estructura d'entitats del mateix tipus. Cadascuna d'aquestes entitats s'anomena '''objecte'''.
 
 
La classe recull totes les propietats i comportaments comuns d’aquestes entitats, però no les que difereixen.
 
 
Els '''objectes''' són instàncies d’una classe, representen un estat real d’un classe on les propietats que defineixen la classe tenen un valor concret.
 
 
Es poden descriure els objectes des d’un punt vista
 
 
* Estàtic: El valor de les seves propietats, '''atributs''' (''Estat'')
 
* Dinàmica: Com respon a esdeveniments externs, '''mètodes''' (''Comportament'')
 
 
[[File: ObjectClass.png]]
 
 
=== Descripció estàtica. Atributs ===
 
 
Els atributs, poden ser de dos tipus segons l’àmbit:
 
 
* Atributs '''d’instància''' poden tenir un valor diferent per a cada objecte.
 
* Atributs '''de classe'''. Tenen el mateix valor per a tots els objectes de la classe. Només hi ha una còpia de l'atribut que comparteixen tots els objectes de la classe.
 
 
Es defineixen diferents nivells d’accés sobre els atributs, de manera general:
 
 
* Visibilitat '''pública''': Atributs accessibles externament.
 
* Visibilitat '''privada''': Només accessibles internament.
 
* Visibilitat '''protegida''': Només accessibles internament i des dels descendents.
 
 
=== Descripció dinàmica. Mètodes  ===
 
 
 
Pot haver-hi quatre tipus de operacions o mètodes:
 
 
* '''Constructors i destructors''': Els primers es criden en el moment que s’instancia una classe, o sigui quan es crea un objecte. Tenen el mateix nom que la classe. Java no necessita destructors.
 
* '''Modificadors''' (Setter): Permeten modificar el valor d’un atribut
 
* '''Consultors''' (Getter): Permeten obtenir el valor d’un atribut
 
* '''Altres'''. Qualsevol altre mètode
 
 
Les operacions també poden tenir diferents àmbit:
 
 
* Operacions '''d’objecte'''. S’apliquen als objectes de la classe.
 
* Operacions '''de classe'''. S’apliquen a la classe (Per exemple les operacions constructores i destructores, i els Getter/Setter sobre atributs de classe).
 
 
 
Els nivells d’accés sobre els mètodes,de manera general:
 
 
* Visibilitat '''pública''': Atributs accessibles externament.
 
* Visibilitat '''privada''': Només accessibles internament.
 
 
 
Exemple
 
 
[[File: alumne.jpg]]
 
 
=== Instanciació, ús dels objectes ===
 
 
Per exemple suposem la classe ''Qualsevol'', aquesta classe té
 
* Un atribut ''atribut1''
 
* Un mètode
 
 
=== Tipus primitius vs Objectes ===
 
 
== Conversions de tipus ==
 

Revisió de 16:10, 22 set 2018