Diferència entre revisions de la pàgina «M3 - Programació Orientada a Objectes / Activitats UF4: Classes»
(Hi ha 13 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 8: | Línia 8: | ||
fes un altre mètode '''llistarInformacio''' que mostrarà per pantalla la informació de la unitat formativa. | fes un altre mètode '''llistarInformacio''' que mostrarà per pantalla la informació de la unitat formativa. | ||
− | <!-- | + | <!-- |
− | < | + | <source lang="java"> |
− | </ | + | package provauf_1; |
+ | |||
+ | |||
+ | public class Uf_1 { | ||
+ | public String nom; | ||
+ | public int hores; | ||
+ | public double pes; | ||
+ | |||
+ | public void posarInformacio(String nom, int hores, double pes){ | ||
+ | this.nom = nom; | ||
+ | this.hores = hores; | ||
+ | this.pes = pes; | ||
+ | } | ||
+ | public void llistarInformacio(){ | ||
+ | System.out.println("Nom:" + this.nom + ", Hores: " + this.hores + ", Pes: " + this.pes); | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | --> | ||
Ara crea la classe '''ProvaUf_1''' que contindrà el '''main''' i crearà una unitat formativa, li | Ara crea la classe '''ProvaUf_1''' que contindrà el '''main''' i crearà una unitat formativa, li | ||
donarà valors i finalment llistarà la informació. | donarà valors i finalment llistarà la informació. | ||
− | <!-- | + | <!-- |
− | < | + | <source lang="java"> |
− | </ | + | package provauf_1; |
+ | |||
+ | |||
+ | |||
+ | public class ProvaUf_1 { | ||
+ | |||
+ | public static void main(String[] args) { | ||
+ | Uf_1 uf = new Uf_1(); | ||
+ | uf.posarInformacio("UF1-Programació estructurada", 85, 20); | ||
+ | uf.llistarInformacio(); | ||
+ | } | ||
+ | |||
+ | } | ||
+ | </source> | ||
+ | --> | ||
+ | |||
2. Crea la classe '''Uf''' que serà una modificació de la de l’exercici anterior. Tindrà tots els atributs privats i els mètodes '''get''' i '''set''' per accedir als atributs. Eliminarem el mètode '''posarInformacio''' i utilitzarem un constructor per a donar-li tots els valors. | 2. Crea la classe '''Uf''' que serà una modificació de la de l’exercici anterior. Tindrà tots els atributs privats i els mètodes '''get''' i '''set''' per accedir als atributs. Eliminarem el mètode '''posarInformacio''' i utilitzarem un constructor per a donar-li tots els valors. | ||
− | <!-- | + | <!-- |
− | < | + | <source lang="java"> |
public class Uf { | public class Uf { | ||
private String nom; | private String nom; | ||
Línia 63: | Línia 96: | ||
} | } | ||
} | } | ||
+ | </source> | ||
+ | --> | ||
− | < | + | Crea la classe '''ProvaUf''' per a provar el funcionament. |
+ | <!-- | ||
+ | <source lang="java"> | ||
− | |||
− | |||
− | |||
package prova_uf; | package prova_uf; | ||
Línia 76: | Línia 110: | ||
public static void main(String[] args) { | public static void main(String[] args) { | ||
− | Uf uf = new Uf(" | + | Uf uf = new Uf("UF2-Disseny modular", 66,15.5); |
uf.llistarInformacio (); | uf.llistarInformacio (); | ||
} | } | ||
} | } | ||
+ | </source> | ||
+ | --> | ||
− | |||
3. Crearem ara la classe '''Modul''' que contindrà la següent informació: | 3. Crearem ara la classe '''Modul''' que contindrà la següent informació: | ||
<pre> | <pre> | ||
Línia 90: | Línia 125: | ||
</pre> | </pre> | ||
Tindrà un constructor al qual li passarem totes les dades, els atributs seran privats, i tindrà els mètodes '''get''' i '''set''' per accedir als atributs. També tindrà un mètode anomenat '''mostraInformacio''' el qual mostrarà el nom, el número d’hores i per a cada UF tota la informació (cal utilitzar el mètode '''llistarInformacio''' de la classe Uf). | Tindrà un constructor al qual li passarem totes les dades, els atributs seran privats, i tindrà els mètodes '''get''' i '''set''' per accedir als atributs. També tindrà un mètode anomenat '''mostraInformacio''' el qual mostrarà el nom, el número d’hores i per a cada UF tota la informació (cal utilitzar el mètode '''llistarInformacio''' de la classe Uf). | ||
− | <!-- | + | <!-- |
− | + | <source lang="java"> | |
− | + | package provamodul; | |
− | |||
− | |||
− | < | ||
− | package | ||
public class Modul { | public class Modul { | ||
private String nom; | private String nom; | ||
private int hores; | private int hores; | ||
− | private Uf uf[]= new Uf[3]; | + | private Uf uf[] = new Uf[3]; |
− | + | ||
public Modul(String nom, int hores, Uf[] uf) { | public Modul(String nom, int hores, Uf[] uf) { | ||
this.nom = nom; | this.nom = nom; | ||
this.hores = hores; | this.hores = hores; | ||
this.uf=uf; | this.uf=uf; | ||
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
− | |||
− | |||
− | |||
public String getNom() { | public String getNom() { | ||
return nom; | return nom; | ||
Línia 141: | Línia 163: | ||
this.uf = uf; | this.uf = uf; | ||
} | } | ||
− | + | public void mostrarInformacio(){ | |
− | |||
System.out.println("Modul: "+ this.nom); | System.out.println("Modul: "+ this.nom); | ||
System.out.println("Hores Modul: "+ this.hores); | System.out.println("Hores Modul: "+ this.hores); | ||
Línia 150: | Línia 171: | ||
} | } | ||
} | } | ||
+ | |||
+ | |||
+ | } | ||
+ | </source> | ||
+ | --> | ||
+ | Finalment crearem la classe '''ProvaModul''' la qual crearà un mòdul amb tota la informació i la mostrarà (cal entendre que per a crear aquest mòdul primer caldrà crear tres objectes Uf i posar-les a la taula). | ||
+ | <!-- | ||
+ | <source lang="java"> | ||
+ | package provamodul; | ||
+ | |||
+ | |||
+ | public class ProvaModul { | ||
+ | |||
+ | |||
+ | public static void main(String[] args) { | ||
+ | |||
+ | String nom; | ||
+ | int hores; | ||
+ | Uf uf[] = new Uf[3]; | ||
+ | nom = "M3-Programació"; | ||
+ | hores = 264; | ||
+ | uf[0] = new Uf("UF1-Programació estructurada", 80, 25); | ||
+ | uf[1] = new Uf("UF2-Disseny modular", 66, 15.5); | ||
+ | uf[2] = new Uf("UF3-Fonaments de gestió de fitxers ", 66, 10); | ||
+ | Modul modul = new Modul(nom, hores, uf); | ||
+ | modul.mostrarInformacio(); | ||
+ | |||
+ | } | ||
+ | |||
} | } | ||
− | </ | + | </source> |
+ | --> | ||
+ | |||
'''Ampliació:''' Modifica l’exercici per a permetre a voluntat de l’usuari anar creant mòduls | '''Ampliació:''' Modifica l’exercici per a permetre a voluntat de l’usuari anar creant mòduls | ||
(fins a un màxim de 10) que aniràs posant en una taula de mòduls. Al final de la | (fins a un màxim de 10) que aniràs posant en una taula de mòduls. Al final de la | ||
introducció cal mostrar la informació de tots els mòduls creats. | introducció cal mostrar la informació de tots els mòduls creats. | ||
− | <!-- | + | <!-- |
− | < | + | <source lang="java"> |
− | </ | + | package provamodul; |
+ | |||
+ | import java.util.Scanner; | ||
+ | |||
+ | |||
+ | public class ProvaModul { | ||
+ | |||
+ | |||
+ | public static void main(String[] args) { | ||
+ | Scanner teclat = new Scanner(System.in); | ||
+ | |||
+ | |||
+ | |||
+ | Modul modul[] = new Modul[10]; | ||
+ | int numModuls = 0; | ||
+ | System.out.println("Vols introduir un nou mòdul (S / N): "); | ||
+ | char resposta = Character.toUpperCase(teclat.next().charAt(0)); | ||
+ | |||
+ | while (resposta =='S' && numModuls<10){ | ||
+ | System.out.println("Nom del mòdul: "); | ||
+ | String nom = teclat.next(); | ||
+ | System.out.println("Hores del mòdul: "); | ||
+ | int hores = teclat.nextInt(); | ||
+ | System.out.println("Quantes Uf's te el mòdul: (màxim 3)"); | ||
+ | int numUf = teclat.nextInt(); | ||
+ | Uf uf[] = new Uf[numUf]; | ||
+ | for (int i = 0; i < numUf; i++) { | ||
+ | |||
+ | System.out.println("Nom Unitat formativa: )"); | ||
+ | String nomUf = teclat.next(); | ||
+ | System.out.println("Hores Unitat formativa: )"); | ||
+ | int horesUf = teclat.nextInt(); | ||
+ | System.out.println("Pes Unitat formativa: )"); | ||
+ | int pesUf = teclat.nextInt(); | ||
+ | uf[i] = new Uf(nomUf, horesUf, pesUf); | ||
+ | } | ||
+ | modul[numModuls] = new Modul(nom, hores, uf); | ||
+ | numModuls++; | ||
+ | System.out.println("Vols introduir un nou mòdul (S / N): "); | ||
+ | resposta = Character.toUpperCase(teclat.next().charAt(0)); | ||
+ | } | ||
+ | |||
+ | for (int i = 0; i < numModuls; i++) { | ||
+ | modul[i].mostrarInformacio(); | ||
+ | |||
+ | } | ||
+ | |||
+ | |||
+ | } | ||
+ | |||
+ | } | ||
+ | </source> | ||
+ | --> |
Revisió de 15:31, 9 maig 2022
1. Crea la classe Uf_1, que representarà una unitat formativa. La classe contindrà la següent informació:
String nom; int hores; double pes; //representa el pes dins del mòdul
fes un mètode anomenat posarInformacio que tindrà tres paràmetres per assignar la informació a la UF.
fes un altre mètode llistarInformacio que mostrarà per pantalla la informació de la unitat formativa. Ara crea la classe ProvaUf_1 que contindrà el main i crearà una unitat formativa, li donarà valors i finalment llistarà la informació.
2. Crea la classe Uf que serà una modificació de la de l’exercici anterior. Tindrà tots els atributs privats i els mètodes get i set per accedir als atributs. Eliminarem el mètode posarInformacio i utilitzarem un constructor per a donar-li tots els valors.
Crea la classe ProvaUf per a provar el funcionament.
3. Crearem ara la classe Modul que contindrà la següent informació:
String nom; int hores; Uf uf [ ]; //Taula que contindrà les Uf del mòdul. Suposarem 3 Uf.
Tindrà un constructor al qual li passarem totes les dades, els atributs seran privats, i tindrà els mètodes get i set per accedir als atributs. També tindrà un mètode anomenat mostraInformacio el qual mostrarà el nom, el número d’hores i per a cada UF tota la informació (cal utilitzar el mètode llistarInformacio de la classe Uf). Finalment crearem la classe ProvaModul la qual crearà un mòdul amb tota la informació i la mostrarà (cal entendre que per a crear aquest mòdul primer caldrà crear tres objectes Uf i posar-les a la taula).
Ampliació: Modifica l’exercici per a permetre a voluntat de l’usuari anar creant mòduls (fins a un màxim de 10) que aniràs posant en una taula de mòduls. Al final de la introducció cal mostrar la informació de tots els mòduls creats.