Unity C#, переопределить тип переменной в дочернем классеC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Unity C#, переопределить тип переменной в дочернем классе

Сообщение Anonymous »


Я постараюсь изо всех сил объясниться, но английский не мой родной язык.

Подводя итог: я хочу переопределить тип переменной в дочернем классе или что-то подобное, чтобы мои дочерние классы всегда имели «последнюю» версию каждого класса.

Сейчас у меня есть 2 класса > Animal и AnimalAnimator, и у обоих классов есть дочерние классы Dog и DogAnimator.
Класс
Animal выглядит следующим образом:

публичный класс Animal: MonoBehaviour { общественный AnimalAnimator Animator {get; частный набор; } частная виртуальная пустота Awake() { Аниматор = GetComponent(); [код...] } } Я хочу сделать что-то подобное с Dog:

public class Dog: Animal { общественный новый DogAnimator Animator {get; частный набор; } частное переопределение void Awake() { база.Пробуждение(); Аниматор = GetComponent(); } } Я хочу, чтобы Dog расширял Animal и переопределял компонент AnimalAnimator с помощью DogAnimator (который расширяет DogAnimator. Но Unity выдает мне следующую ошибку:

Одно и то же имя поля сериализуется несколько раз в классе или его родительском классе. Это не поддерживается: Base(Dog) k__BackingField Возможно ли это на C#? Как мне действовать?

Большое спасибо.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»