2017-02-06 3 views
1

В прошлом я работал над несколькими проектами, в которых я использовал те же типы методов в нескольких разных классах. Вот простой пример:Лучший способ сжатого хранения часто используемых методов

public class ClassA { 

    ... 

    public int methodA(){ 

    } 

    ... 

} 

public class ClassB { 

    ... 

    public int methodA(){ 
     ... 
    } 

    ... 

} 

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

Что было бы лучшим способом сохранить этот метод в Java, чтобы мне не приходилось записывать его в каждом отдельном классе и тратить драгоценные линии? Я подумал о том, что у меня есть класс для хранения этих вспомогательных методов, но у меня может быть довольно много методов, которые разделяются между классами, поэтому я просто пытаюсь найти лучший способ сделать это.

+0

Что вы имеете в виду под «те же типы методов "? Является ли код идентичным, и вы просто скопируете? – 4castle

+0

90% времени методы будут одинаковыми, да. Я предполагаю, что если есть какое-либо изменение в методе, оно должно быть переписано для класса, к которому он относится, – Defa1t

+0

Не существует «наилучшего способа», который охватывает все случаи. Это зависит от того, какие изменения происходят в 10%, потому что, вероятно, даже тогда вам не придется переписывать весь метод. – 4castle

ответ

6

Вы можете создать вспомогательный класс, а затем объявить methodA() как статический метод полезности:

public class MethodHelper { 
    public static int methodA() { 
     // implementation goes here 
    } 
} 

Вы можете это потребить этот метод следующим образом:

public class ClassA { 
    ... 

    public void doSomething() { 
     int value = MethodHelper.methodA(); 
    } 
} 
Смежные вопросы