2. Alkalom: Osztályok és Egységbezárás
Elméleti összefoglaló
A második alkalommal elkezdtük az objektumorientált paradigmát, ahol a valódi világ entitásait osztályokba csomagoltuk.
- Egységbezárás (Encapsulation): Az adatok elrejtése (private) és kontrollált elérése (public property).
- Property-k: Get és Set metódusok, amelyek lehetővé teszik a validációt az adatbeállítás során.
- Konstruktor: Speciális metódus az objektum inicializálására.
Példakód: Ember osztály validációval
namespace EmberProgram
{
internal class Ember
{
private int kor;
private string nev;
public Ember(string nev, int kor) {
this.Kor = kor;
this.Nev = nev;
}
public int Kor {
get { return kor; }
set {
// Csak pozitív kor fogadható el
kor = value > 0 ? value : 1;
}
}
public string Nev {
get { return nev; }
set {
// Minimum 3 karakteres név
nev = value.Length >= 3 ? value : "-";
}
}
}
}
Gyakorlati feladatok
Ezen az órán készült el a Dobókocka szimuláció is, ahol az osztálymezőkben tároltuk a véletlenszám-generátort, biztosítva, hogy minden példány saját állapottal rendelkezzen.