Public değişkenlere class dışındanda ulaşılıp değerleri değiştirilebilir, class içindende ulaşılabilir, uye fonksyonlar aracılıyla

Private değişkenlere ise sadece class içindeki uye fonksyonlar erişebilir,class dışından ulaşılmasını istemedğimiz değişkenleri private tanımlarız, boylece dışarda yapılacak istenmeyen sistemin dengesini değiştirecek değişiklikler önlenmiş olur, nesneye dayalı programlamanın bir kolaylıgıda budur data hiding

Protected tek classda kullanimi itibariyle private'a benzesede bazı farkları vardır, Private değişkenlere uye fonksyonlara türetilmiş classlardan erişim olmaz tam guvenlidir fakat protected değişkenlere class'ınızdan yeni bir class türeterek ulaşılabilir, buda türetme derive etme olayıda oop'un getirdiği kolaylıklardan biridir devir miras kalıtım anlamında inheritance kelimesi kullanilir

Uye fonksyonlar ise class'in içimde tanımlanmış fonksyonlardır bunlarda private veya public olarak tanımlanabilirler, private olanlara sadece class içinden diğer uye fonksyonlar aracılığı ile ulaşılır cağırılır, public olanlara ise nesne aracılığı ile direkt ulaşılabilir çağırılabilir.