Pääsynmäärittäjien Avainsanat
Pyyhkäise näyttääksesi valikon
Kapselointi saavutetaan pääasiassa käyttämällä näkyvyysmääreitä. Nämä määreet säätelevät, kuinka laajasti ohjelman muut osat pääsevät käsiksi luokan jäseniin (sekä tietoihin että funktioihin). Kolme pääasiallista näkyvyysmäärettä ovat:
-
private: saatavilla vain saman luokan sisällä ja piilotettu luokan ulkopuolelta. Tämä on luokan jäsenten oletusnäkyvyys; -
protected: saatavilla luokan ja sen perivien luokkien sisällä. Nämä ovat laajemmin saatavilla kuinprivate-jäsenet, mutta tarjoavat silti tietosuojaa; -
public: saatavilla mistä tahansa ohjelman osasta. Vaikkapublic-jäsenet eivät ole kapseloituja, ne ovat olennaisia luokan ulkoisen rajapinnan määrittelyssä.
Näkyvyysmääre pysyy voimassa, kunnes toinen määre määritellään tai kohdataan.
main.cpp
12345678910111213#include <iostream> class Person { public: std::string name; }; int main() { Person person; person.name = "Bob"; std::cout << person.name; }
Kokeile poistaa tai muuttaa public-avainsanaa ja katso, mitä tapahtuu.
Samoin kuin kuljettaja voi käyttää autoa ymmärtämättä sen sisäistä rakennetta, käyttäjien ja ohjelmoijien ei tarvitse olla huolissaan luokan private-attribuuteista ja -metodeista. Noudata näitä sääntöjä:
- Pidä tietojäsenet
private- taiprotected-määriteltyinä; - Tarjoa
public-metoditprivate-datan käsittelyyn ja muokkaamiseen; - Varmista, että nämä metodit tekevät vain sen, mihin ne on tarkoitettu, paljastamatta sisäistä logiikkaa.
Hyvin kapseloitu class paljastaa vain käyttäjille tarpeelliset asiat ja piilottaa sisäisen tilansa sekä toteutuksen yksityiskohdat.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme