﻿# V7034\. The method in the child class does not override or implement the method of the ancestor class\. A typo may be present in the name of the child class method\.

Анализатор обнаружил, что метод не переопределяет метод базового класса и не реализует метод интерфейса, хотя их сигнатуры очень похожи\.

Рассмотрим пример:

```cpp
class ClassA {
    public receiveArguments(arg1: string, arg2: number): void {
       // ....
    }

    // ....
}

class ClassB extends ClassA {
    recieveArguments(arg1: string, arg2: number): void {   // <=
        // ....
    }

    // ....
}
```

В приведённом примере при переопределении метода `receiveArguments` в классе `ClassB` была допущена опечатка в названии метода\. Из\-за этой опечатки переопределения метода не произойдёт\.

Исправленный вариант:

```cpp
class ClassB extends ClassA {
    receiveArguments(arg1: string, arg2: number): void {
        ....
    }
}
```

Для защиты от ошибок переопределения метода в TypeScript можно воспользоваться ключевым словом [`override`](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-3.html#override-and-the---noimplicitoverride-flag):

```cpp
class ClassB extends ClassA {
    override receiveArguments(arg1: string, arg2: number): void {
        // ....
    }
}
```

Если декларация содержит ключевое слово `override`, но никакой метод не переопределяется, то компилятор сообщит об ошибке, и программа не скомпилируется\. Также есть возможность в `tsconfig.json` добавить настройку компилятора [`noImplicitOverride`](https://www.typescriptlang.org/tsconfig/#noImplicitOverride), чтобы в случае переопределения ключевое слово `override` было обязательным:

```cpp
{
  "compilerOptions": {
    "noImplicitOverride": true
  }
}
```

Для предотвращения такой ошибки в JavaScript можно использовать аннотацию [`@override`](https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html#override) в JSDoc для маркировки переопределения методов\. Тогда, в случае переопределения несуществующего метода, инструментами разработки будут сгенерированы специальные предупреждения\.