Как вызвать другой метод, который импортирует в другой класс? - PullRequest
0 голосов
/ 14 мая 2019

Я хочу вызвать three метод класса, импортированный в two файл класса из one метода класса.

Я пытался, но это ошибка.

Имя файла: one.dart

import 'two.dart';

class one{
  main(){
    return two().three().add();
  }
}

Имя файла: two.dart

import 'three.dart';

class two extends one{
  static three   = new three();
}

Имя файла: three.dart

class three extends two{
  void add(int a, int b){

  }
}

Я хочу вызвать add метод из класса one. Как это сделать? Пожалуйста, помогите?

1 Ответ

0 голосов
/ 14 мая 2019
  1. three является статическим. two().three() => two.three()
  2. three является атрибутом. two.three() => two.three
  3. пропущенные параметры метода add. add() => add(1, 2) // Просто я добавил любое число в качестве примера
  4. three имя атрибута и three имя класса совпадали. class three => class Three
  5. пропущенный тип из трех. static three => static Three three

    class one{
      main(){
        return two.three.add(1, 2);
      }
    }
    
    class two extends one{
      static Three three = new Three();
    }
    
    class Three extends two{
         void add(int a, int b){
       }
    }
    

Но, для хорошего ООП, существует принцип обращения зависимостей, согласно которому модули высокого уровня не должны зависеть от модулей низкого уровня. Ваш код нарушил этот принцип сейчас. Поэтому я не рекомендую использовать текущий код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...