2009-06-09 19 views
11

Jestem nowy w programowaniu, zastanawiałem się, czy istnieje sposób na znalezienie klas java, których potrzebuję do konkretnej rzeczy, poza pytaniem ludzi o nią na forach? Widziałem API na stronie słońca, ale nie ma dobrej opcji wyszukiwania, aby znaleźć klasę, która będzie dla mnie działać.jak znaleźć klasy Java?

+0

Spróbuj tego - http://javasearch.buggybread.com/ –

Odpowiedz

19

Jeśli jesteś nowicjuszem w Javie (lub programowaniu), ważne będzie, aby nauczyć się czytać i rozumieć dokumentację, aby stać się samodzielnym - to pierwszy krok do tego, aby być mniej zależnym od innych ludzi iw większości przypadków poprawi twoją szybkość uczenia się i programowania.

Oto kilka porad i sugestii:

poznać Java API Specification.

Początkowo format specyfikacji API specyfikacji Javadoc wydaje się być trochę słabszy, bez możliwości wyszukiwania, ale odkryłem, że jest to możliwe, ponieważ przeglądanie dokumentacji za pomocą przeglądarki jest bardzo wydajne.

Ponieważ Javadocs są po prostu plikami HTML, można je łatwo przeglądać i nawigować w przeglądarce, a także tworzyć zakładki. Ponadto, the API Specification is available for download, więc nie trzeba zawsze iść do sieci, aby uzyskać informacje.

Ponieważ dokumentacja to tylko strony internetowe, za pomocą funkcji Znajdź w przeglądarce można szybko znaleźć informacje na stronie, a jeśli to się nie uda, skorzystanie z wyszukiwarki Google lub Twojej ulubionej wyszukiwarki w celu znalezienia dokumentacji jest bardzo szybkie i łatwe.

Google (lub twoja ulubiona wyszukiwarka) jest twoim przyjacielem.

Potrzebujesz informacji na temat klasy StringBuilder? Spróbuj następujące zapytanie:

stringbuilder java 6

Pierwszy wynik będzie stronę Java API Specyfikacja dla klasy StringBuilder. Porada polega na dopisaniu ciągu "java 6" na końcu zapytania i wydaje się, że specyfikacja interfejsu API jest najbardziej widoczna.

Zapoznaj się ze strukturą specyfikacji interfejsu API.

Struktura prezentacja narzędzia Javadoc jest bardzo miły i logiczne:

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

Javadoc jest podzielona na trzy ramki.

  • Ramka w lewym górnym rogu: lista wszystkich pakietów platformy Java API.
  • Rama po lewej stronie: lista wszystkich klas w wybranej paczce.
  • Prawa ramka: szczegóły aktualnie wybranego pakietu lub klasy.

Ogólnie rzecz biorąc, szukanie klasy rozpoczyna się od wybrania paczki z ramki po lewej stronie, następnie odszukania klasy w dolnej lewej ramce i wreszcie przeglądania szczegółów na prawej ramce. Pomysł jest następujący:

Package -> Class -> Details 

Szczegóły w ramce z prawej strony dla klas i pakietów są również bardzo uporządkowane. Dla klas, struktury są następujące:

  • Nazwa klasy
  • hierarchia dziedziczenia
  • Zaimplementowane interfejsy
  • zajęcia związane
  • Informacje na temat i opis klasy; przykłady użycia.
  • podsumowanie Pole
  • Podsumowanie Konstruktor
  • Podsumowanie metod
  • polowe szczegóły/Konstruktor/metody.

Kiedy szukam informacji o metodzie, przewijam w dół do Podsumowania metod, znajdź żądaną metodę i kliknij nazwę tej metody, która przeskoczy do szczegółów metody.

Co więcej, wszystko na temat klasy jest udokumentowane na jednej stronie - może się wydawać, że zawiera zbyt wiele informacji dla jednej strony, ale ułatwia uzyskanie wszystkich potrzebnych informacji o klasie z jednej lokalizacji. W innych formatach dokumentacji może być konieczne przechodzenie między wieloma stronami w celu uzyskania informacji o kilku metodach w tej samej klasie. Dzięki formatowi Javadoc wszystko znajduje się na jednej stronie.

Dowiedz API platformy Java

Następnym krokiem jest poznanie ważne pakiety API platformy Java. Pomoże to szybko znaleźć klasy z ogromnego zbioru klas w API platformy.

Nie martw się, bierz to wolno - nie musisz uczyć się wszystkiego naraz!

Niektóre pakiety miejsca to:

  • java.lang - Zawiera klasy, takie jak String, System, Integer i inne, które są automatycznie importowane w każdym programie Java.

  • java.util - Zawiera kolekcje Java (takich jak List, Set, Map i ich realizacji), Date, Random i innych klas użytkowych. Jest to prawdopodobnie pierwszy pakiet do znalezienia klas, które będą przydatne w wykonywaniu typowych operacji.

  • java.io - Zajęcia związane z wejściem i wyjściem, takie jak File, Reader S i Writer S i różne Stream s.

  • java.awt i javax.swing - Dla graficznych interfejsów użytkownika, Java używa Abstract Window Toolkit lub Swing, a te dwa pakiety są wykorzystywane do czynienia z GUI w Javie.

Znajomość miejsc, w których odbywają się zajęcia, oraz poznanie, gdzie można znaleźć obszerną dokumentację, ułatwi znalezienie informacji. Prawdopodobnie trochę potrwa, zanim się do tego przyzwyczaisz, ale gdy już to zrozumiesz, powinno być o wiele łatwiej i będziesz mógł znaleźć informacje na własną rękę.

Powodzenia!

+3

teraz to jest odpowiedź. –

1
  • Poszukujesz bibliotek Java? Wypróbuj wyszukiwarkę Google, np. database connection pool java
  • Szukasz klas wewnątrz podstawowych bibliotek java? Zainstaluj IDE i szukaj klas, np. w Eclipse spróbuj Ctrl-Shift-T i wpisz nazwy: LinkedList. Zauważ, że w Eclipse możesz również używać symboli wieloznacznych, takich jak * Lista, aby uzyskać wszystkie klasy z nazwami kończącymi się na List;
  • Szukasz konkretnej klasy wewnątrz paczki? Wypróbuj Sonatype's Maven repository, kliknij wyszukiwanie zaawansowane iw nowej rozwijanej wybierz nazwę klasy.
2

To zależy od tego, co masz na myśli. Na przykład. jeśli chcesz znać lokalizację dokładną klasy jak „Gdzie był BufferedReader ponownie?”, zrobić wyszukiwania Google na:

site:java.sun.com BufferedReader 

Jeśli chcesz wiedzieć, jak zrobić zadanie, na przykład "Jak mogę odczytać hasła z terminala bez echa?" (java.io.Console), czasami można go rozwiązać dopiero po raz pierwszy, prosząc o radę.

2

Większość czasu, jeśli jest w rdzeniu języka (to nie jest 3rd biblioteki strona) I kliknąć na poniższy link:

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

która lista wszystkich klas w Java SE.

Aby sprawdzić, czy dana klasa może zadziałać, spróbuję, naciskając Ctrl-F i zgadując, jaka klasa byłaby odpowiednia.

Ostatecznie z czasem, kiedy przyzwyczaisz się do zajęć, wyszukiwanie będzie łatwiejsze.

Na przykład, powiedzmy, że chcesz używać tablicy:

plony Array Ctrl + F:

Array 
Array 
ArrayBlockingQueue 
ArrayDeque 
ArrayIndexOutOfBoundsException 
ArrayList 
Arrays 
ArrayStoreException 
ArrayType 
ArrayType 

klikam na każdego z nich i zapoznać się z dokumentacją. Niektóre z nich nie mają sensu, niektóre z nich są dokładnie tym, czego potrzebuję.

Czasami może nie działać bardzo prosto. Pozwala sposób jak stworzyć okno:

Ctrl + F Nie pokazuj JFrame, która jest poprawna odpowiedź, ale to jest po prostu kwestia tunning swój sens :)

Mam nadzieję, że to pomaga.

+1

dokumentacji API Javy jest tak dużo lepiej niż MSDN. –

1

Polecam książkę, takich jak Java In A Nutshell który jest doskonałym punktem odniesienia dla API Java SE (zauważ, że obejmuje Java tylko 5, ale to powinno być OK dla większości potrzeb)

0

Zgadzam się, że tutoriale są dobre, a wyszukiwarki ogólnie są świetne (ale teraz wszystkie prowadzą cię z powrotem do SO). Poza forami, jednym z zasobów, którego nie można przegapić, są programiści wokół ciebie. Jeśli jesteś częścią zespołu programistów lub w klasie, możesz uzyskać odpowiedzi, których potrzebujesz, lub możesz współpracować przy wyszukiwaniu. Często człowiekowi łatwiej jest ci pomóc, jeśli nie jesteś dokładnie pewien, że rozumiesz, czego szukasz.

1

Lubię używać DocJar.

Istnieje nawet wtyczka do zaćmienia, ale jeszcze jej nie próbowałem.

http://eclipse-plugins.2y.net/eclipse/plugin_details.jsp?id=959 
Powiązane problemy