могут ли конструкторы возвращать строки? - PullRequest
4 голосов
/ 28 августа 2009

У меня есть класс с именем ArionFileExtractor в файле .java с тем же именем.

public class ArionFileExtractor {

public String ArionFileExtractor (String fName, String startText, String endText) {
    String afExtract = "";
    // Extract string from fName into afExtract in code I won't show here
    return afExtract;
}

Однако, когда я пытаюсь вызвать ArionFileExtractor в другом файле .java, как показано ниже:

String afe = ArionFileExtractor("gibberish.txt", "foo", "/foo");

NetBeans сообщает мне, что существуют несовместимые типы и что требуется java.lang.String. Но я кодировал ArionFileExtractor для возврата стандартного строкового типа, который является java.lang.string.

Мне интересно, может ли мой конструктор ArionFileExtractor легально вернуть строку?

Я очень ценю любые советы или указатели о том, что я делаю здесь неправильно.

Ответы [ 11 ]

0 голосов
/ 28 августа 2009

Нет. Конструктор на самом деле ничего не возвращает. Вместо этого он строит рассматриваемый объект.

Похоже, вам нужен здесь служебный метод:

public class Whatever {
   public static String doStuff(String s) {
      return s;
   }
}
...