How to change the class of an object dynamically in C#?

后端 未结 10 1334
囚心锁ツ
囚心锁ツ 2021-01-05 17:09

Suppose I have a base class named Visitor, and it has 2 subclass Subscriber and NonSubscriber.

At first a visitor is start off from a NonSubscriber, i.e.

<         


        
10条回答
  •  -上瘾入骨i
    2021-01-05 18:08

    It seems that you have some design problems. I think that it would be better to redesign your code like:

    class Visitor
    {
        private bool isSubscriber = false;
    
        public bool IsSubscriber
        {
             get { return isSubscriber; }
        }
    
        public void Subscribe()
        {
            // do some subscribing stuff
            isSubscriber = true;
        }
    
        public void Unsubscribe()
        {
            // do some unsubscribing stuff
            isSubscriber = false;
        }
    }
    

提交回复
热议问题