Flutter, @override Widget build()

Given that we are extending and not implementing Stateless or Stateful widget class, are we not overriding a normal class method instead of an abstract class or an interface? In Dart best practice, should we not be only overriding methods from abstract class or interface? For example, a typical example below:

class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {}