Junior
Խոսեք Java-ում մուտքի մոդիֆիկատորների մասին։
sobes.tech AI
Պատասխան AI-ից
Մուտքային մոդիֆիկատորները կառավարում են Java-ում դասերի, դասի անդամների (մարզիչների, մեթոդների, կոնստրուկտորների) տեսանելիությունը:
Կան չորս մոդիֆիկատոր:
publicprotecteddefault(մոդիֆիկատոր չունեցող)private
Նրանց տեսանելիությունը տարբեր կոնտեքստերում:
| Մոդիֆիկատոր | Դասի ներսում | Փաթեթի ներսում | Տարածքային դասում (յուրաքանչյուր փաթեթում) | Ամենուր |
|---|---|---|---|---|
private |
Այո | Ոչ | Ոչ | Ոչ |
default |
Այո | Այո | Ոչ | Ոչ |
protected |
Այո | Այո | Այո | Ոչ |
public |
Այո | Այո | Այո | Այո |
Օգտագործման օրինակներ:
public class Parent {
private int privateField; // Միայն Parent դասի ներսում հասանելի
int defaultField; // Փաթեթի ներսում հասանելի
protected int protectedField; // Փաթեթի և ժառանգական դասերի ներսում հասանելի
public int publicField; // Ամենուր հասանելի
private void privateMethod() {} // Միայն Parent դասի ներսում հասանելի
void defaultMethod() {} // Փաթեթի ներսում հասանելի
protected void protectedMethod() {} // Փաթեթի և ժառանգական դասերի ներսում հասանելի
public void publicMethod() {} // Ամենուր հասանելի
}
package another_package;
import some_package.Parent;
public class Child extends Parent {
void accessFields() {
// privateField = 10; // Խափանում: private
defaultField = 20; // Խափանում: default (այլ փաթեթում)
protectedField = 30; // Հասանելի: protected (ժառանգական դասում)
publicField = 40; // Հասանելի: public
}
void accessMethods() {
// privateMethod(); // Խափանում: private
// defaultMethod(); // Խափանում: default (այլ փաթեթում)
protectedMethod(); // Հասանելի: protected (ժառանգական դասում)
publicMethod(); // Հասանելի: public
}
}
Մոդիֆիկատորները օգտագործվում են ինկապսուլյացիայի և API կառավարման համար։