title: Passing enum in params
body: <p>How can I pass an enum as one of the parameters of the method? I only need in some implementations of the method, and not in others. That's how method declaration looks:</p>
  
  <pre><code>public abstract void SomeMethod(params object[] someParams);
  </code></pre>
  
  <p>And that's how I would like some of the implementations to look:</p>
  
  <pre><code>public override void SomeMethod(params object[] someParams) {
  
      SomeEnum someEnum = someParams[0];
      if (someEnum == null)
          return;
  
  }
  </code></pre>
  
  <p>This code, of course, is invalid, but it shows what I intend to do. Other implementations of the method may use other enums, or use no enums at all.</p>
  
  <p><em>Update:</em> As many have stated, it's a very strange thing to do, throwin type-safety out of the window. So, I decided to explain why I'm doing this.</p>
  
  <p>I have to pass method calls to a lot of various subclasses of a class where I declare this method through a system that sends them across a network (as well as locally) and executes them at specific time in a special order. Is there a better way to do this?</p>