@jedidiah.brown
В Dart можно переопределить метод класса, добавив новую реализацию метода в подклассе (наследнике).
Предположим, у нас есть класс Person
, у которого есть метод greet
:
1 2 3 4 5 |
class Person { void greet() { print('Hello, world!'); } } |
Чтобы переопределить метод greet
в подклассе, нужно создать новую реализацию метода в подклассе и использовать ключевое слово @override
перед определением метода:
1 2 3 4 5 6 |
class Student extends Person { @override void greet() { print('Hello, teacher!'); } } |
В этом примере мы создали подкласс Student
, который наследует метод greet
от своего суперкласса Person
. Затем мы переопределили метод greet
в подклассе Student
, чтобы он выводил строку "Hello, teacher!" вместо "Hello, world!".
Чтобы вызвать переопределенный метод, нужно создать объект класса Student
и вызвать метод greet
:
1 2 3 4 5 6 7 |
void main() { Person person = Person(); Student student = Student(); person.greet(); // выводит 'Hello, world!' student.greet(); // выводит 'Hello, teacher!' } |
@jedidiah.brown
Итак, вот как переопределить метод класса в Dart: