Video: Einfache Methoden - Funktionen in Java 1 (Mit & ohne Parameter) ● Gehe auf SIMPLECLUB.DE/GO 2024
Sie können den Zugriff für Felder und Methoden in Ihrer Android-App festlegen. Eine Java-Klasse kann entweder öffentlichen Zugriff oder nichtöffentlichen (Standard-) Zugriff haben. Ein Mitglied einer Klasse hat jedoch vier Möglichkeiten: öffentlich, privat, Standard und geschützt.
Die Felder und Methoden einer Klasse sind die Mitglieder der Klasse.
So funktioniert der Memberzugriff:
- Ein Standardmitglied einer Klasse (ein Member, dessen Deklaration nicht die Wörter
public
,private
oderenthält.
) kann von jedem Code innerhalb desselben Pakets wie diese Klasse verwendet werden. - Ein privates Mitglied einer Klasse kann nicht in einem Code außerhalb der Klasse verwendet werden.
- Ein öffentliches Mitglied einer Klasse kann überall dort verwendet werden, wo die Klasse selbst verwendet werden kann. das heißt:
- Jedes Programm in einem Paket kann sich auf ein öffentliches Mitglied einer öffentlichen Klasse beziehen.
- Damit ein Programm auf ein öffentliches Mitglied einer Standardzugriffsklasse verweisen kann, muss sich das Programm im selben Paket wie die Klasse befinden.
Um diese Regeln in Aktion zu sehen, checken Sie die öffentliche Klasse in diesem Code aus.
Paket com. Allyourcode. Bank;
public class Konto {
public Zeichenfolge customerName;
privat int internalIdNumber;
Stringadresse;
Schnurgebundenes Telefon;
öffentlich int socialSecurityNumber;
int Kontoart;
doppeltes Gleichgewicht;
public static int findById (int interneIdNummer) {
Konto foundAccount = neues Konto ();
// Code zum Suchen des Accounts geht hier.
gibt den gefundenen Account zurück. interneIdNummer;
Account
und seine Felder.
Bezieht sich auf eine öffentliche Klasse im selben Paket.
Schauen wir mal, was mit einem anderen Paket passiert.
Bezieht sich auf eine öffentliche Klasse in einem anderen Paket.
Die
UseAccount-Klasse befindet sich im selben Paket wie die
- Account
-Klasse.
DieUseAccount
-Klasse kann eine Variable vom Typ - Account
erstellen.
Der Code derUseAccount
-Klasse kann sich auf das öffentliche - customerName
-Feld der
-Konto-Klasse und auf das Standard
-Adresse-Feld der
Konto-Klasse.
DieUseAccount
-Klasse kann nicht auf das private - internalIdNumber
-Feld der
-Konto-Klasse verweisen, selbst wenn
UseAccountund
-Kontobefinden sich im selben Paket.
DieUseAccountFromOutside
-Klasse ist nicht im gleichen Paket wie die - -Konto
-Klasse.
DieUseAccountFromOutside
-Klasse kann eine Variable vom Typ - Account
erstellen. (Eine
import-Deklaration hält Sie davon ab, den vollqualifizierten Namen
com. Allyourcode. Bank. Kontoüberall im Code zu wiederholen.
DieUseAccountFromOutside
Der Code der Klasse kann auf das öffentliche - customerName
-Feld der
Account-Klasse verweisen.
Der Code derUseAccountFromOutside
Klasse kann nicht auf das Standard - Adresse
Feld der
AccountKlasse oder auf das private
internalIdNumberFeld der
Konto-Klasse.
Betrachten Sie nun die nicht öffentliche Klasse in diesem Code.Paket com. Allyourcode. Spiel;
Klasse Sprite {
public
Stringname;
Zeichenbild;
double distanceFromLeftEdge, distanceFromTop; doppelte BewegungAcross, motionDown;
privat
int renderWert;
void render () {
if (renderValue == 2) { // Mach das hier
}
}
}
Der Code benutzt das
Sprite
Klasse und ihre Felder.
Bezieht sich auf eine Standardzugriffsklasse im selben Paket.
Schauen wir mal, was mit einem anderen Paket passiert.
Bezieht sich auf eine Standardzugriffsklasse in einem anderen Paket.
Die
UseSprite-Klasse befindet sich im gleichen Paket wie die
- Sprite
-Klasse.
DieUseSprite
-Klasse kann eine Variable vom Typ - Sprite
erstellen.
Der Code derUseSprite
-Klasse kann auf das öffentliche - -Namen
-Feld der
Sprite-Klasse und auf das Standard
distanceFromTop-Feld der
SpriteKlasse.
DieUseSprite
-Klasse kann nicht auf das private - renderingValue
-Feld der
Sprite-Klasse verweisen, obwohl
UseSpriteund
Spritebefinden sich im selben Paket.
DieUseSpriteFromOutside
-Klasse befindet sich nicht im selben Paket wie die - Sprite
-Klasse.
DieUseSpriteFromOutside
-Klasse kann keine Variable vom Typ - Sprite
erstellen. (Nicht einmal eine
import-Deklaration kann Sie vor einer Fehlermeldung schützen.)
In derUseAccountFromOutside
-Klasse werden Verweise auf - Sprites verwendet. Name, Sprite. distanceFromTop
und
Sprite. renderValuesind alle bedeutungslos, da die Variable
spritekeinen Typ hat.