why have protection attributes on/in interfaces and abstract
classes/methods no effect outside a module?
module types;
private interface itest
{
private static void blub();
public void blub2();
private void blub3();
}
private class test
{
protected abstract void blub4();
public abstract void blub5();
}
---
module classes;
import types;
class A: itest
{
public static void blub(){}
public void blub2(){}
public void blub3(){}
}
class B: test
{
protected override void blub4(){}
public override void blub5(){}
}
class C: test
{
public override void blub4(){}
public override void blub5(){}
}
why is it allowed to use them in interface and abstract - and even check
if there are no redundency like "private private" or something