Is there a way i can have derived classes override the default value of the base class? In the example below i would need the Hammer.Name to return "Hammer".

```
public  class ItemBase   
{        
    public string Name = "Base";
}

public class Hammer: ItemBase
{
    new public string Name = "Hammer";
}

public class Test 
{
    ItemBase MyThing = new Hammer();

    // Prints "Base"
    Console.WriteLine(ItemBase.Name);        
}

```