using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; public class SMvcr { private string _labelText; private StateVCR _concreteState; public SMvcr() { setState(new SvcrStandBy()); } public void setState(StateVCR e) { _concreteState = e; } public string getLabelText() { return _labelText; } } public abstract class StateVCR { public abstract void setStateText(); } public class SvcrStandBy : StateVCR { public override void setStateText() { throw new NotImplementedException(); } } public class SvcrPlay : StateVCR { public override void setStateText() { throw new NotImplementedException(); } } public class SvcrRewind : StateVCR { public override void setStateText() { throw new NotImplementedException(); } } public class SvcrFastForward : StateVCR { public override void setStateText() { throw new NotImplementedException(); } } public class SvcrRecord : StateVCR { public override void setStateText() { throw new NotImplementedException(); } }