Я новичок в программировании, мне было интересно, есть ли способ найти классы java, которые мне нужны для конкретной вещи, кроме как спрашивать людей на форумах? Я видел API на веб-сайте sun, но нет хорошего способа поиска, чтобы найти класс, который будет работать для меня.
Как найти классы Java?
Ответ 1
Если вы новичок в Java (или программировании), важно научиться читать и понимать документацию, чтобы стать самостоятельной - это первый шаг к тому, чтобы быть менее зависимым от других людей, и в большинстве случаев улучшит вашу скорость обучения и программирования.
Ниже приведены некоторые советы и предложения:
Ознакомьтесь с Спецификацией API Java.
Во-первых, формат Javadoc спецификации API выглядит немного недоукомплектованным без какой-либо возможности поиска, но я обнаружил, что это возможность просматривать документацию с помощью браузера, чтобы быть очень мощным.
Так как Javadocs - это просто файлы HTML, их можно легко просматривать и перемещать в браузере, а закладки также легко просты. Кроме того, спецификация API доступна для скачивания, поэтому не нужно всегда переходить в Интернет для получения информации.
Поскольку документация представляет собой только веб-страницы, использование функции поиска в браузере может быстро найти информацию на странице, и если это не удается, использование Google или вашей любимой поисковой системы для поиска документации очень быстро и просто.
Google (или ваша любимая поисковая система) - ваш друг.
Нужна информация о классе StringBuilder
? Попробуйте выполнить следующий запрос:
Первым результатом будет страница спецификации API Java для класса 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
,Random
и другие утилитарные классы. Это, вероятно, первый пакет, который нужно найти, чтобы найти классы, которые будут полезны при выполнении общих операций. -
java.io
- классы, касающиеся ввода и вывода, такие какFile
,Reader
иWriter
и различныеStream
s. -
java.awt
иjavax.swing
. Для графических пользовательских интерфейсов Java использует Abstract Window Toolkit или Swing, и эти два пакета используются для работы с GUI в Java.
Зная, где находятся классы и начинают понимать, где искать в огромном количестве документации, легче будет найти информацию. Вероятно, потребуется некоторое время, чтобы привыкнуть к нему, но как только вы его повесите, это будет намного проще, и вы сможете найти информацию самостоятельно.
Удачи!
Ответ 2
Это зависит от того, что вы имеете в виду. Например. если вы хотите узнать местоположение точного класса, например "Где был BufferedReader снова?", я выполняю поиск Google по адресу:
site:java.sun.com BufferedReader
Если вы хотите знать, как выполнить задачу, например. "Как я могу читать пароли с терминала без эха?" (java.io.Console), иногда вы можете понять это впервые, попросив совета.
Ответ 3
В большинстве случаев, если он находится в ядре языка (это не сторонняя библиотека), я использую следующую ссылку:
http://java.sun.com/javase/6/docs/api/allclasses-frame.html
Какой список всех классов в Java SE.
Чтобы узнать, может ли класс работать, или нет, я пытаюсь нажать Ctrl-F и угадать, какой класс будет подходящим.
Со временем, когда вы привыкнете к классам, поиск будет проще.
Например, скажем, вы хотите использовать массив:
Ctrl + F Массив дает:
Array
Array
ArrayBlockingQueue
ArrayDeque
ArrayIndexOutOfBoundsException
ArrayList
Arrays
ArrayStoreException
ArrayType
ArrayType
Я нажимаю на каждый и вижу документацию. Некоторые из них не имеют никакого смысла, некоторые из них именно то, что мне нужно.
Иногда это может не работать очень прямо. Позволяет создать окно:
Ctrl + F не показывает JFrame, который является правильным ответом, но это просто вопрос настройки вашего чувства:)
Надеюсь, это поможет.
Ответ 4
- Вы ищете библиотеки java? Попробуйте выполнить поиск в Google, например. пул соединений с базой данных
- Вы ищете классы внутри основных java-библиотек? Установите IDE и найдите классы, например. в Eclipse попробуйте Ctrl-Shift-T и введите имена: LinkedList. Обратите внимание, что в Eclipse вы также можете использовать подстановочные знаки, такие как * Список, чтобы получить все классы с именами, заканчивающимися в List;
- Ищете определенный класс внутри пакета? Попробуйте репозиторий Sonatype Maven, нажмите расширенный поиск и в новом раскрывающемся списке классов.
Ответ 5
Я бы рекомендовал книгу, такую как Java In A Nutshell, которая является отличной ссылкой для Java SE API (обратите внимание, что она охватывает Java 5, но это должно быть хорошо для большинства потребностей)
Ответ 6
Учебники Java, http://java.sun.com/docs/books/tutorial/ и API Java, http://java.sun.com/javase/6/docs/api/, являются важными ресурсами, чтобы узнать, как что-то делать и с какими классами.
Ответ 7
Мне нравится использовать DocJar.
Существует даже плагин для eclipse, но я еще не пробовал его.
http://eclipse-plugins.2y.net/eclipse/plugin_details.jsp?id=959
Ответ 8
Я согласен с тем, что учебники хороши, а поисковые системы в целом великолепны (но теперь они все ведут к SO). Помимо форумов, один ресурс не пропустить - это программисты вокруг вас. Если вы являетесь частью команды разработчиков или в классе, вы можете получить ответы, которые вам нужны, или вы можете сотрудничать в поиске. Человеку часто легче помочь вам, если вы не совсем уверены, что понимаете, что именно вы ищете.