Czy istnieje sposób w języku Java, aby programowo zaimportować klasę, podając jej pełną nazwę jako ciąg (np. Jak "com.mydummypackage.MyClass"
)?Jak programowo importować klasę Java
Odpowiedz
Jeśli przez „import” masz na myśli „załadować Class
obiektu, dzięki czemu można uruchomić metod refleksji”, a następnie użyć:
Class<?> clazz = Class.forName("com.mypackage.MyClass");
(powód my czytelnicy byli zdezorientowani przez słowo „import” jest to, że zazwyczaj odnosi się to do słowa kluczowego import
używanego w górnej części plików klasy Java, aby poinformować kompilator w jaki sposób rozszerzyć nazwy klas, np. import java.util.*;
).
Obiekt o = clazz.newInstance(); jest potrzebny, jeśli chcemy użyć obiektu tej klasy. –
Java jest doskonałym źródłem wiedzy dla rzeczy jak ta, proponuję przeczytać w dokumentacji obiektu klasy, które można znaleźć tutaj: http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Class.html
Jak wspomniano w odpowiedzi Jasona Cohena można załadować klasa obiektu za pomocą poniższego wiersza kodu, a następnie utworzyć instancję tej klasy byś wykonanie metody newInstance obiektu klasy tak:
Class<?> clazz = Class.forName("com.mypackage.MyClass");
Object o = clazz.newInstance();
nie należy mylić „import” z klasy załadunku.
Instrukcja importowania niczego nie ładuje. Wszystko, co robi, to oszczędzić ci konieczności wypisywania w pełni rozwiązanej nazwy klasy. Jeśli importujesz foo.bar.Baz, możesz odwoływać się do klasy Baz w swoim kodzie, zamiast wypowiadać go. To wszystko oznacza import.
aaaah ... ok, teraz widzę. Wielkie dzięki, jest to ważny fragment, który przeoczyłem czytając Java 101 ... – xelurg
- 1. Jak programowo importować zamówienia do Magento?
- 2. importować klasę z folderu na innym poziomie
- 3. Jak importować klasę z innego modułu w Androidzie?
- 4. Jak programowo utworzyć niestandardową klasę widoku?
- 5. Java: jak "zrestartować" klasę statyczną?
- 6. Programowo klasyfikuj klasę do xsd
- 7. Jak programowo importować dane programu Excel do tabeli programu Access?
- 8. Jak programowo importować wtyczki i fragmenty z plików JAR
- 9. Java: Konwertuj prymitywną klasę
- 10. Generics Java - zdobyć klasę?
- 11. JSON na klasę Java
- 12. Jak wywołać klasę Java z jmetera?
- 13. Jak uzyskać klasę int. Java w Scali?
- 14. Jak ustawić niezmienną klasę Java w Clojure?
- 15. Jak mogę rzucić klasę Java w Clojure?
- 16. Java: Casting klasę niepowiązanych interfejsu
- 17. Jak importować org.apache Java Zależności w/lub w/o Maven
- 18. Jak importować dll do projektu Android Java (pracuje z zaćmienia)
- 19. Jak importować plik SDF
- 20. Jak importować Enum
- 21. Jak programowo skompilować i utworzyć instancję klasy Java?
- 22. Programowo kompilować java z JavaCompiler?
- 23. Ponownie skompiluj klasę Java ze słownika
- 24. Ustaw klasę Java jako sekwencję w Clojure
- 25. Pobierz klasę otaczającą wyrażenia lambda Java
- 26. Jak importować pliki non-node.js?
- 27. jak importować dane do szyn?
- 28. Jak eksportować/importować szablony Netbeans
- 29. Jak importować klasy w JSP?
- 30. Jak sprawdzić, co należy importować?
Masz na myśli import (do pliku .java) lub masz na myśli instantiate? –