#java #android
#java #Android
Вопрос:
фрагмент кода:
for( String token : tokens )
{
try
{
Url url = as("mycompany", "someapikey").call(shorten(token));
}
}
что означают ‘as’ и ‘call’. Являются ли они ключевыми словами в java?
я просматривал и нашел этот код, и я хотел бы понять, что это значит.
заранее благодарю вас.
Комментарии:
1. Это не ключевые слова. Вероятно, вверху есть статический импорт … что-то вроде «импортировать статический some.package. Class.as ;»
2. где ты это нашел? Функции as () и call() не являются какими-либо хорошо известными функциями, о которых я знаю, они могут быть определены пользователем. Особенно as().
Ответ №1:
Похоже, что для сокращения URL-адресов используется bit.ly
библиотека. for
цикл выполняет итерацию по строкам в коллекции tokens
. затем он создает сокращенный URL-адрес с помощью бита.библиотека ly. Это не ключевые слова в Java, это просто имена методов.
android-бит.библиотека ly:http://code.google.com/p/bitlyj /
Ответ №2:
Нет, это обычные методы. as()
Метод должен принадлежать классу, из которого он получен (или суперклассу), в то время как call()
метод определен для типа, возвращаемого as()
.
Было бы полезно иметь обратную ссылку на исходный источник, где вы нашли это, поскольку часто бывает полезно больше контекста.
Ответ №3:
as
и call
не являются ключевыми словами в Java.
Кажется, что as(String s1, String s2)
это метод, который возвращает объект, у которого есть метод call(..)
.
Этот метод call(..)
вызывается для возвращаемого значения as(..)
.
Ответ №4:
Может быть, статический импорт?
Например, если класс Foo имеет статический метод as()
, вы можете использовать
import static Foo.as;
{
//now can do this:
as(); //equal to Foo.as();
}