I could very will be imagining things, but I seem to recall in Java that I can declare a field or parameter as such:

```
public class BarHandler{

    public Class<? extends Foo> fooType;

    public ProcessedBar Process(string xml){
        Foo foo = fooType.GetInstance();
        return foo.process(xml)
    }
}

```

This can be useful for factory style systems where you have to be able to generate new instances of the type in question for example.

I am trying to figure out if there is an analog to this in C#, or if possibly this is just something that is available within Java.