Java Protected Access funktioniert nicht

n Java gibt es drei Zugriffsebene

Public - Offen für die WeltPrivate - Nur für die Klasse @ öffnProtected - Nur für die Klasse und ihre Unterklassen geöffnet (Vererbung).

Warum lässt der Java-Compiler dies zu?

TestBlah.java:

public class TestBlah {

    public static void main(String[] args) {
        Blah a = new Blah("Blah");
        Bloo b = new Bloo("Bloo");
        System.out.println(a.getMessage());
        System.out.println(b.getMessage()); //Works
        System.out.println(a.testing);
        System.out.println(b.testing); //Works
    }
}

Blah.java:

public class Blah {
    protected String message;

    public Blah(String msg) {
        this.message = msg;
    }

    protected String getMessage(){
        return(this.message);
    }   
}

Bloo.java:

public class Bloo extends Blah {
    public Bloo(String testing) {
        super(testing);
    }
}

Antworten auf die Frage(10)

Ihre Antwort auf die Frage