Cześć
Mam pytanie dotyczące takiego prostego kodu:
public enum ItemType
{
Food,
Equipment,
Default
}
public abstract class ItemObject : ScriptableObject
{
public GameObject prefab;
public ItemType type;
[TextArea(15,20)] public string description;
}
public class FoodObject : ItemObject
{
public void Awake()
{
type = ItemType.Food;
}
}
Chodzi mi o zmienną **type **użytą w klasie **FoodObject **. Jest to zmienna nie statyczna w takiej samej metodzie. Używam jej w silniku Unity 3D ale chciałem zrozumieć do czego ona jest przypisana, do jakiego obiektu?
Tutaj podam podobny przykład bez użycia Unity 3D:
class Wyswietlacz1 : Dziedziczenie
{
static void Main()
{
}
public void Testowa()
{
z = 10;
Console.WriteLine(z);
}
}
}
namespace KursCszarp
{
class Dziedziczenie : Punkt2
{
public int z { get; set; }
}
}
Jeżeli chciał bym wyświetlić wartość zmiennej z w metodzie Main to muszę ją przypisać do obiektu (np. klasy Wyswietlacz1)?
Na tą chwilę nie jest przypisana do żadnego obiektu?
I jak się to ma do przykładu z Unity 3D, z jakim obiektem jest związana zmienna type?
EDIT: Rozumiem, że jest związana z klasąItemObject ale nie jest powiązana z żadną zmienną referencyjną. Dziwię się, że mogę z niej korzystać w silniku Unity 3D - w odniesieniu z przykładu ze zmienną z, gdzie żeby jej użyć, muszę ją powiązać z konkretnym obiektem.