что означает этот фрагмент кода

#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();
}