как найти классы Java?

//in Swift 3
//subtract 3 hours
let calendar = NSCalendar.autoupdatingCurrent
newDate = calendar.date(byAdding:.hour, value: -3, to: originalDate)
12
задан 9 June 2009 в 22:54
поделиться

8 ответов

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

Ниже приведены некоторые советы и предложения:

Ознакомьтесь со спецификацией Java API Specification .

Поначалу формат Javadoc в спецификации API казался немного слабым без каких-либо возможностей поиска, но я обнаружил, что возможность просматривать документацию в браузере является очень мощным инструментом.

Поскольку документы Javadoc - это просто файлы HTML, их можно легко просматривать и перемещать в браузере, а также легко добавлять страницы в закладки.Кроме того, Спецификация API доступна для загрузки , поэтому нет необходимости всегда заходить в Интернет для получения информации.

Поскольку документация представляет собой просто веб-страницы, с помощью функции «Найти» в браузере можно быстро найти информацию на странице, а если это не удается, использовать Google или вашу любимую поисковую систему для поиска документации очень быстро и легко.

Google (или ваша любимая поисковая система) - ваш друг.

Нужна информация о классе StringBuilder ? Попробуйте выполнить следующий запрос:

построитель строк java 6

Первым результатом будет страница спецификации Java API для класса StringBuilder . Совет состоит в том, чтобы добавить строку « java 6 » в конце запроса, и это, кажется, выводит спецификацию API на первое место в большинстве случаев.

Ознакомьтесь со структурой Спецификации API.

Структура представления инструмента Javadoc очень удобна и логична:

+-----------+-------------------+
|           |                   |
|  Packages |                   |
|           |                   |
+-----------+      Details      |
|           |                   |
|  Classes  |                   |
|           |                   |
+-----------+-------------------+

Javadoc разделен на три фрейма.

  • Верхний левый кадр: список всех пакетов API платформы Java.
  • Нижний левый фрейм: список всех классов в выбранном пакете.
  • Правая рамка: Подробная информация о текущем выбранном пакете или классе.

Обычно поиск класса начинается с выбора пакета в верхнем левом кадре, затем поиска класса в нижнем левом кадре и, наконец, просмотра деталей в правом кадре. Идея такова:

Package -> Class -> Details

Детали в правом фрейме для классов и пакетов также очень структурированы.Для классов структура следующая:

  • Имя класса
  • Иерархия наследования
  • Реализованные интерфейсы
  • Связанные классы
  • Информация и описание класса; примеры использования.
  • Сводка поля
  • Сводка конструктора
  • Сводка метода
  • Сведения о поле / конструкторе / методе.

Когда я ищу информацию о методе, я прокручиваю вниз до «Сводки по методам», нахожу метод, который мне нужен, и щелкаю имя этого метода, после чего я перехожу к сведениям о методе.

Кроме того, все о классе задокументировано на одной странице - может показаться, что это слишком много информации для одной страницы, но это позволяет легко получить всю необходимую информацию о классе из одного места. В других форматах документации может потребоваться переключение между несколькими страницами, чтобы получить информацию о нескольких методах в одном классе. В формате Javadoc все на одной странице.

Изучите API платформы Java

Следующим шагом будет изучение важных пакетов API платформы Java. Это поможет быстро найти классы из огромной коллекции классов в API платформы.

Не волнуйтесь, не торопитесь - вам не нужно изучать все сразу!

Вот некоторые интересные пакеты:

  • java.lang - Содержит такие классы, как String , System , Integer и другие, которые автоматически импортируются в каждую программу Java.

  • Java.util - содержит коллекции Java (например, List , Set , Map и их реализации), Date , Случайные и другие утилитарные классы. Вероятно, это первый пакет, к которому нужно обратиться, чтобы найти классы, которые будут полезны при выполнении общих операций.

  • java.io -Классы, относящиеся к вводу и выводу, такие как File , Reader s и Writer s, а также различные Stream s.

  • java.awt и javax.swing - Для графических пользовательских интерфейсов Java использует Abstract Window Toolkit или Swing, и эти два пакета используются для работы с графическими интерфейсами в Java.

Знание, где находятся классы, и понимание того, где искать в огромном количестве документации, облегчит поиск информации. Вероятно, потребуется некоторое время, чтобы привыкнуть к этому, но как только вы освоитесь, это должно быть намного проще, и вы сможете найти информацию самостоятельно.

Удачи!

20
ответ дан 2 December 2019 в 05:28
поделиться

Это зависит от того, что вы имеете в виду. Например, если вы хотите узнать местоположение конкретного класса, такого как «Где снова был BufferedReader?», Я выполняю поиск в Google по:

site:java.sun.com BufferedReader

. Если вы хотите узнать, как выполнить задачу, например, «Как я могу прочитать пароли из терминал без эха? " (java.io.Console), иногда в первый раз можно понять, только спросив совета.

2
ответ дан 2 December 2019 в 05:28
поделиться

В большинстве случаев, если он находится в ядре языка (это не сторонняя библиотека), я использую следующую ссылку:

http://java.sun.com /javase/6/docs/api/allclasses-frame.html

, который перечисляет все классы в Java SE.

Чтобы узнать, может ли класс работать или нет, я пытаюсь нажать Ctrl-F и угадать, какой класс будет

Со временем, когда вы привыкнете к существующим классам, поиск станет проще.

Например, допустим, вы хотите использовать массив:

Ctrl + F Array дает :

Array 
Array 
ArrayBlockingQueue 
ArrayDeque 
ArrayIndexOutOfBoundsException 
ArrayList 
Arrays 
ArrayStoreException 
ArrayType 
ArrayType 

Я нажимаю на каждую и просматриваю документацию. Некоторые из них не имеют смысла, некоторые из них как раз то, что мне нужно.

Иногда это может работать не очень просто. Давайте рассмотрим, как создать окно:

Ctrl + F не показывает JFrame, который является правильным ответом,

2
ответ дан 2 December 2019 в 05:28
поделиться
  • Вы ищете библиотеки Java? Попробуйте поискать в Google, например пул соединений с базой данных java
  • Вы ищете классы внутри основных библиотек Java? Установите IDE и найдите классы, например, в Eclipse попробуйте Ctrl-Shift-T и введите имена: LinkedList . Обратите внимание, что в Eclipse вы также можете использовать подстановочные знаки, такие как * List , чтобы получить все классы с именами, заканчивающимися на List;
  • Ищете конкретный класс внутри пакета? Попробуйте репозиторий Maven Sonatype , щелкните расширенный поиск и в новом раскрывающемся списке выберите имя класса.
1
ответ дан 2 December 2019 в 05:28
поделиться

Я бы порекомендовал такую ​​книгу, как Java In A Nutshell , которая является отличным справочником по Java SE API (обратите внимание, что она охватывает только Java 5, но это должно быть Подходит для большинства нужд)

1
ответ дан 2 December 2019 в 05:28
поделиться

Учебники по Java, http://java.sun.com/docs/books/tutorial/ , и Java API, http: // java .sun.com / javase / 6 / docs / api / - важные ресурсы, чтобы узнать, как что-то делать и с какими классами.

1
ответ дан 2 December 2019 в 05:28
поделиться

Мне нравится использовать DocJar .

Есть даже плагин для eclipse, но я еще не пробовал его.

http://eclipse-plugins.2y.net/eclipse/plugin_details.jsp?id=959
1
ответ дан 2 December 2019 в 05:28
поделиться

Я согласен с тем, что учебники хороши, а поисковые системы в целом великолепны (но теперь все они возвращают вас к SO). Помимо форумов, нельзя пропустить еще один ресурс - это программисты вокруг вас. Если вы являетесь частью команды разработчиков или участвуете в классе, вы можете получить нужные ответы или совместно работать над поиском. Человеку часто легче помочь вам, если вы не совсем уверены, что понимаете, что ищете.

0
ответ дан 2 December 2019 в 05:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: