Kotlin Zusammenfassung Geschütztes Eigentum

8

Wenn ich die folgende Klassenhierarchie habe:

%Vor%

Ich bekomme eine Warnung auf Baz :: Ding, das sagt:

  

Redundanter Sichtbarkeitsmodifikator

Bedeutet das, dass der Compiler es als geschützt behandelt, ohne dass Sie das angeben müssen oder dass es öffentlich sein muss?

    
Eliezer 21.09.2016, 21:59
quelle

1 Antwort

7

Sie erhalten in Kotlin eine IDE Inspection Style Warnung für Dinge wie zusätzliche Semikolons, die Sie nicht benötigen, zusätzliche generische Typparameter, die bereits abgeleitet werden können, und mehr. Ihr für redundante Sichtbarkeit Modifikator ist in die gleiche Richtung.

Wenn Sie die Inspektionsnachricht erweitern, sehen Sie den vollständigen Text:

  

Diese Inspektion meldet Sichtbarkeitsmodifikatoren, die der Standardsichtbarkeit eines Elements entsprechen (für die meisten Elemente öffentlich, für Mitglieder geschützt, die ein geschütztes Element überschreiben).

Und Sie können die Inspektion innerhalb Ihrer IDE ausschalten, wenn Sie nicht mehr sehen können.

Noch ein paar Anmerkungen dazu:

Wenn Sie eine Methode oder ein Mitglied einer Vorgängerklasse überschreiben, befinden Sie sich bereits auf derselben Zugriffsebene wie bei der Deklaration. Saying protected gibt das Offensichtliche an (für den Compiler, der weiß, dass es protected ist).

Sie können den Zugriffsmodifikator erneut festlegen, wenn Sie möchten. Und Sie können es mehr öffnen, indem Sie es in public ändern. Aber Sie können es nicht weiter einschränken, zum Beispiel zu private (denn wenn es privat ist, wie könnte es überschrieben werden, ist diese Idee inkompatibel mit override ), was ein Compilerfehler wird.

    
Jayson Minard 22.09.2016, 00:03
quelle

Tags und Links