package com.test.accessmodifiers;
public class SuperClass {
static void defaultMethod() {
...
}
}
package com.test.accessmodifiers;
public class Public {
public Public() {
SuperClass.defaultMethod();
// метод доступен в том же пакете
}
}
package com.test.accessmodifiers;
public class SuperClass {
public static void publicMethod() {
...
}
}
package com.test.accessmodifiers.another;
import com.test.accessmodifiers.SuperClass;
public class AnotherClass {
public AnotherClass() {
SuperClass.publicMethod();
// метод доступен в любом пакете
}
}
package com.test.accessmodifiers;
public class SuperClass {
static private void privateMethod() {
...
}
private void anotherPrivateMethod() {
privateMethod();
// доступен только в этом же классе
}
}
package com.test.accessmodifiers;
public class SuperClass {
static protected void protectedMethod() {
...
}
}
package com.test.accessmodifiers.another;
import com.test.accessmodifiers.SuperClass;
public class AnotherSubClass extends SuperClass {
public AnotherSubClass() {
SuperClass.protectedMethod();
// доступен в подклассе, несмотря на другой пакет
}
}