====== Variablen- und Funktionszugriff ======
Es gibt drei Möglichkeiten, Variablen zu deklarieren:
* direkt in der Funktion
* Die Variable ist nur innerhalb der Funktion verwendbar
* private am Beginn der Klasse
* Die Variable ist in allen Funktionen innerhalb der Klasse verwendbar
* public am Beginn der Klasse
* Die Variable kann auch von anderen Klassen aus aufgerufen werden.
Weiters gibt es die Möglichkeit, Funktionen auch von anderen Klassen aufzurufen.
In den folgenden Codebeispielen werden die verschiedenen Möglichkeiten aufgelistet:
===== ScopeAndAccessModifiers =====
using UnityEngine;
using System.Collections;
public class ScopeAndAccessModifiers : MonoBehaviour
{
public int alpha = 5;
private int beta = 0;
private int gamma = 5;
private AnotherClass myOtherClass; //Deklaration des Zugriffs auf "AnotherClass"
void Start ()
{
alpha = 29;
myOtherClass = new AnotherClass();
//Verwendung einer Funktion und einer Variable von "AnotherClass"
myOtherClass.FruitMachine(alpha, myOtherClass.apples);
}
void Example (int pens, int crayons)
{
int answer;
answer = pens * crayons * alpha;
Debug.Log(answer);
}
void Update ()
{
Debug.Log("Alpha is set to: " + alpha);
}
}
Another Class
using UnityEngine;
using System.Collections;
public class AnotherClass
{
public int apples; //Die beiden Variablen apples und bananas
public int bananas; //können auch in der Klasse ScopeAndAccessModifiers
//verwendet werden (siehe oben)
private int stapler; //Die beiden Variablen sind nur innerhalb
private int sellotape; //Dieser Klasse verwendbar
public void FruitMachine (int a, int b)
{ //Die Funktion FruitMachine wird auch
int answer; //in der Klasse ScopeAndAccessModifiers verwendet (siehe oben)
answer = a + b;
Debug.Log("Fruit total: " + answer);
}
private void OfficeSort (int a, int b)
{
int answer; //Variable answer ist nur in dieser Funktion aufrufbar
answer = a + b;
Debug.Log("Office Supplies total: " + answer);
}
}