У меня есть эти два класса:C# реализации абстрактного метода класса: я должен сделать актерский состав?
public abstract class Loop : Events
{ }
public class SimpleLoop : Loop
{
public Sound sound;
public SimpleLoop simple;
}
И у меня это абстрактный класс с абстрактным методом:
public abstract class AbstractParser
{
public abstract Loop ParseLoop();
}
И этот другой класс, который расширяет предыдущий класс и реализовать абстрактный метод:
public class Parser2 : AbstractParser
{
public override Loop ParseLoop()
{
//not important stuff
simpleLoop.simple = (SimpleLoop) ParseLoop();
return simpleLoop;
}
}
Теперь, мой вопрос: есть ли способ избежать литья внутри simpleLoop.simple = (SimpleLoop) ParseLoop()
?
Очевидно, что я не полностью занимался классами, поэтому не спрашивайте себя, какова цель этого беспорядка: D Спасибо за вашу помощь!
Рассматривали ли вы дженерики? –