Javni in privatni razred

Javni in privatni razred

Avtor: Klavdia Budak

Javni in Privatni razred

Razred

Razred je definicija objekta. Razred si predstavljamo kot nek prostor. V razredu opisujemo stvari v prostoru - kako so sestavljena in, kako so videti. Te stvari so objekti znotraj razreda.

V razredu(class ) so določene lastnosti objektov. Lastnosti so: katere podatke hranimo o objektih in katere metode oz. odzivi objektov na sporočila. Stanje objekta opišemo s spremenljivkami, njihovo obnašanje pa z metodami.

Dostopnost je načelo združevanja, kadar smo metode in polja (spremenljivke ali komponente) združili znotraj razreda, se odločimo kaj naj bo javno(public ) in kaj zasebno(private ).

Vse podatke, ki so zapisani v oklepajih razreda lahko določimo oz. kontroliramo, ali bodo metode in polja dostopna od znotraj.

  • Metoda ali polje je privatno, kadar je dostopna le znotraj razreda.
  • Metoda ali polje je javno, kadar je dostopna tako znotraj kot tudi izven razreda.

Primer razreda

(n4_kb.png)

Definirali smo razred z imenom MojRazred. V vsakem objektu te vrste poznamo nek niz, ki ga hranimo v njem. Razred ima metodo Izpisi, ki nam izpiše vsebino oz. naš niz, ki je hranjen v njem.

V glavnem programu Main smo poklicali naš razred, da to delo opravi. Naredili smo objekt iz razreda MojRazred. V objekt katerega je shranjen niz, objekt z imenon primer, naročimo naj izpiše svojo vsebino s klicem metode Izpisi.

(n5_kb.png)

Sestava razreda

Naredili smo razred MojRazred. Definirali smo spremenljivko ime, ki bo dostopna le znotraj razreda.

        public class MojRazred
        {
            private string ime;
            public MojRazred(string niz )
            { ime = niz; }


Sestavili smo metodo, ki nam izpiše niz ime in komentar.

            public void Izpisi()
            {
                Console.WriteLine(ime+"... Naredil/a sem moj razred.");
            }


V glavnem programu Main, smo ustvarili objekt primer.

             MojRazred primer;   //naslov objekta


Z naslednjim ukazom v pomnilnik naredimo objekt tipa Mojrazred, po pravilih določene v razredu MojRazred. Novi objekt se nahaja na naslovu primer.

            primer = new MojRazred("Klavdia");


S klicom metode Izpisi vrnemo rešitev s podanim nizom.

             primer.Izpisi();


1. Zgled razreda

Razred Stanovalci


Konstruiraj razred Stanovalci z javnimi spremenljivkami ime, priimek in številko stanovanja stanovalca. Sestavi še metodo, ki nam vrne nadstropje stanovanja, na katerem stanuje stanovalec. Stanovanj je med 1 in 8, nadstropja pa so prvo, drugo in podstrešje. Glavni program vrne ime in priimek stanovalce ter v katerem nadstropju stanuje.

  • Program v C#:
(n6__kb.png)
  • Izpis rešitve:

    (n7_kb.png)

2. Zgled razreda

Razred Stanovanja

Konstruirajmo razred Stanovanja s privatnimi spremenljivkami ime in priimek ter javno spremenljivko številka stanovanja. Sestavi še metodo, ki nam vrne nadstropje stanovanja v katerem stanuje stanovalec. Stanovanj je med 1 in 8, nadstropja pa so prvo, drugo in podstrešje. Glavni program naj vrne številko stanovanja ter v katerem nadstropju stanuje.

  • Razred Stanovanja:

    (n8__kb.png)
  • Glavni program:

    (n9__kb.png)
  • Izpis rešitve:

    (n10__kb.png)

Prikaz razreda z wink-om

Naloge za vajo

  1. Sestavimo razred Avto, ki ima tri spremenljivke. Znamka in registrska naj bosta javni spremenljivki, letnik pa zasebna. Sestavi metodo, ki bo letnik spremenila le v primeru, da bo le-ta v smiselnih mejah. Sestavi še metodo za izpis podatkov.
  2. Sestavimo razred Denarnica z spremenljivkami dvig, vlogo in ugotavljanje stanja. Začetna vrednost naj se postavi s konstruktorjem.
  3. Sestavimo razred Datum, datum sestavljen iz sprmenljivk dan, mesec in leto. Sestavi konstruktor in metodo ToSting, ki nam vrne datum oblike niza.
  4. Sestavimo razred Nepremičnine, ki ima spremenljivke ulica, številko in vrsto nepremičnine. Sestavi konstruktor in metodo ToString, ki nam izpiše v obliki niza.
  5. Sestavimo razred Sola, razred ima tri spremenljivke, razred, nadstropje naj bosta javni, stavba pa zasebna (fiz in mat). Sestavi metodo, ki bo stavbo spremenila ter metodo za izpis podatkov.

Kvizna vprašanja na temo javni in privatni razredi

Poskusite rešiti pravilno naslednja kvizna vprašanja. Začnimo!

Katera definicija privatnega razreda je pravilna?

Preveri

Pravilno

Odgovor je pravilen!
Naprej

Napačno

Žal ne drži! poskusi ponovno!
Zapri

Ali res vse podatki, ki so zapisani v oklepajih razreda lahko določimo oz. kontroliramo ali bodo metode in polja dostopna od znotraj?

Ja, drži!
Ne, to ne drži!

Preveri

Pravilno

Odgovor je pravilen!
Naprej

Napačno

Žal ne drži! poskusi ponovno!
Ponovno

Viri in literatura

0%
0%