Sobes.tech
Junior

Rozprávaj o modifikátoroch prístupu v Jave.

sobes.tech AI

Odpoveď od AI

Prístupové modifikátory riadia viditeľnosť tried, členov triedy (polí, metód, konštruktorov) v Jave.

Existujú štyri prístupové modifikátory:

  • public
  • protected
  • default (bez modifikátora)
  • private

Ich viditeľnosť v rôznych kontextoch:

Modifikátor Vo vnútri triedy Vo vnútri balíka V podtriede (v akomkoľvek balíku) Všade
private Áno Nie Nie Nie
default Áno Áno Nie Nie
protected Áno Áno Áno Nie
public Áno Áno Áno Áno

Príklady použitia:

public class Parent {

    private int privateField;       // Prístupné iba v triede Parent
    int defaultField;              // Prístupné v balíku
    protected int protectedField;   // Prístupné v balíku a v podtriedach
    public int publicField;         // Prístupné všade

    private void privateMethod() {} // Prístupná iba v triede Parent
    void defaultMethod() {}        // Prístupná v balíku
    protected void protectedMethod() {} // Prístupná v balíku a v podtriedach
    public void publicMethod() {}   // Prístupná všade
}
package another_package;

import some_package.Parent;

public class Child extends Parent {

    void accessFields() {
        // privateField = 10; // Chyba: súkromné
        defaultField = 20;   // Chyba: default (v inom balíku)
        protectedField = 30; // Prístupné: protected (v podtriede)
        publicField = 40;    // Prístupné: public
    }

    void accessMethods() {
        // privateMethod(); // Chyba: súkromná
        // defaultMethod(); // Chyba: default (v inom balíku)
        protectedMethod(); // Prístupné: protected (v podtriede)
        publicMethod();  // Prístupné: public
    }
}

Modifikátory sa používajú na zapuzdrovanie a správu API tried.