6 Stimmen

Public onCreate(), oder protected onCreate()?

Beim Lesen des Buches "Hello, Android" ist mir aufgefallen, dass:

jede Java-Datei mit der Methode onCreate(Bundle savedInstanceState) den geschützten Zugriffsmodifizierer hat AUSSER in der Hauptaktivität des Programms [die hat: public void onCreate(Bundle savedInstanceState)].

Warum ist die onCreate Methode in der Hauptaktivität des Programms public, aber überall sonst protected?

1voto

njzk2 Punkte 38000

Sie können die Sichtbarkeit einer Methode ändern. Was Sie nicht tun können, ist die Sichtbarkeit reduzieren (eine öffentliche Methode privat machen), auf eine private Methode zugreifen (sie öffentlich machen).

0voto

Alexander Kulyakhtin Punkte 47326

Es kann auch geschützt werden. Daran ist nichts wichtig oder klug.

0voto

Es gibt keinen Grund, die Methode öffentlich zu machen (aber das hat sowieso keine Auswirkungen). Sie sollten sie sowieso nicht manuell aufrufen.

Übrigens hat Intellij IDEA eine Activity-Vorlage mit öffentlichem onCreate. Das könnte der Grund sein, warum diese Methode im Buch öffentlich ist.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X