# Сокрытие методов

Использование модификатора `new` позволяет скрыть переопределенный метод за новым, с таким же названием. Новый метод может иметь отличную сигнатуру. Сокрытие методов не следует путать с переопределением методов, потому что сокрытие методов не позволяет использовать полиморфизм.

```csharp
class Foo : Object {
    public void my_method() { }
}

class Bar : Foo {
    public new void my_method() { }
}
```

Вы все еще можете вызвать первоначальный метод приведения к основному классу, или интерфейсу:

```csharp
void main() {
    var bar = new Bar();
    bar.my_method();
    (bar as Foo).my_method();
}
```
