вызов методов между классами

1

Есть ли способ вызвать метод в одном классе из другого класса. Я мог бы сказать 5 классов и более чем один может захотеть выполнить ту же операцию. Могу ли я иметь один файл (класс?) С этими общими методами и называть это? Если да, то какой необходимый модификатор для этих "общих" методов - общедоступный, окончательный

Если кто-нибудь может указать мне подходящий учебник, я был бы благодарен - в этом случае я не имел много полезного от Google благодаря Рон

  • 0
    Никогда не разрабатываясь в Android, разве это не так стандартно, как создание экземпляра типа и вызов открытого метода для этого типа?
  • 0
    Это не вопрос Android, это общий вопрос! Посмотрите эту ветку, она даст вам представление о том, что вам нужно прочитать - stackoverflow.com/questions/1711/…
Показать ещё 1 комментарий
Теги:

4 ответа

1
Лучший ответ

Это простой пример для класса (утилиты) с помощью метода, который может использоваться из любого другого класса:

public class Util {
   public static int sizeOf(String input) {
     return input.size();
   }
}

Чтобы заставить его работать "прямо из окна": выберите общедоступный и статический как модификаторы доступа для этого метода. Как и все методы из известного класса java.lang.Math.

1

Я бы пошел с общим учебником по ООП и как использовать классы, например
http://download.oracle.com/javase/tutorial/java/javaOO/classes.html

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

0

Вы можете сделать эти методы общедоступными. Другой способ - передать экземпляры этих других классов в ваш класс. Может быть как параметр метода, set-method или параметр конструктора.

0

Вероятно, вы хотите создать класс "Утилита". Вы можете использовать статическое ключевое слово, чтобы ваши методы статичны:

public UtilityClass {

   public static int myMethod(String arg) {
   }
}

result = UtilityClass.myMethod("sdfs");

В реализации статических методов вы не можете использовать локальные поля, если вы не отметите их как статические.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню