Ten blog wyjaśnia różnicę między metodami Java System.getProperty() i System.getenv().
Co to jest metoda System.getProperty() w Javie?
„ System.getProperty() ” zwraca wartość powiązaną z podaną właściwością systemową. Składa się z „ kluczowa wartość ” w formacie pair, tak jak są zdefiniowane przez administratora systemu lub w plikach konfiguracyjnych. Właściwość można ustawić za pomocą opcji „ -D ” lub jeśli właściwość nie zostanie znaleziona, „ zero ” zostanie zwrócony. Domyślne lub najczęściej używane właściwości systemu wraz z ich opisem są opisane w tym miejscu połączyć .
Niektóre właściwości systemu są wykorzystywane w poniższym fragmencie kodu:
Niektóre właściwości systemu są wykorzystywane w poniższym fragmencie kodu:
klasa rodzic {
//Inicjowanie metody sterownika
publiczny statyczny próżnia główny ( Strunowy [ ] argumenty ) {
Strunowy nazwa użytkownika = System. pobierzWłaściwość ( 'nazwa użytkownika' ) ;
System. na zewnątrz . println ( „Nazwa użytkownika przy użyciu właściwości systemowej:” + nazwa użytkownika ) ;
Strunowy klasaŚcieżka = System. pobierzWłaściwość ( 'Java.klasa.ścieżka' ) ;
System. na zewnątrz . println ( „Bieżąca ścieżka klasy z katalogu głównego:” + klasaŚcieżka ) ;
System. na zewnątrz . println ( „Użyto niewłaściwej właściwości:” + System. pobierzWłaściwość ( 'dom' ) ) ;
System. na zewnątrz . println ( „Informacje o wersji środowiska JRE:” + System. pobierzWłaściwość ( 'Java.runtime.version' ) ) ;
System. na zewnątrz . println ( „Architektura obecnego systemu operacyjnego:” + System. pobierzWłaściwość ( 'os.arch' ) ) ;
}
}
Opis powyższego kodu:
- Po pierwsze, prawdziwy właściciel lub użytkownik systemu jest pobierany poprzez przekazanie „ nazwa użytkownika ” nieruchomość w „ System.getProperty() ' metoda.
- Następnie obiekt „ java.klasa.ścieżka ” przechodzi do „ System.getProperty() ”, aby pobrać ścieżkę bieżącej klasy z katalogu głównego.
- Następnie fałszywa własność „ dom ” przechodzi,
- „ System.getProperty() ” wyświetli „ zero ” oznaczający, że właściwość nie istnieje.
- W ten sam sposób wersja Java Runtime i architektura systemu są pobierane poprzez przekazanie „ java.runtime.version ' I ' os.arch ”, odpowiednio.
Dane wyjściowe pokazują, że wymagane wartości właściwości systemu zostały pobrane za pomocą metody „System.getProperty()”.
Co to jest metoda System.getenv() w Javie?
„ System.pobierzv() ” zwraca odpowiednią wartość dla określonej zmiennej środowiskowej. Zwracane wartości są dynamiczne i ustawiane przez system operacyjny lub przez użytkownika dla bieżącej sesji. Podobnie jak w przypadku metody „System.getProperty()”, jeśli zmienna nie zostanie znaleziona lub nie zawiera żadnej wartości, metoda „ zero ” zostanie zwrócony.
Na przykład odwiedź poniższy kod:
klasa Klasa główna {//Inicjowanie metody sterownika
publiczny statyczny próżnia główny ( Strunowy [ ] argumenty ) {
System. na zewnątrz . println ( „Pobieranie wartości za pomocą metody System.getenv()” ) ;
Strunowy Ścieżka tymczasowa = System. dziesięć ( „TEMP” ) ;
System. na zewnątrz . println ( „Ścieżka do folderu plików tymczasowych to:” + Ścieżka tymczasowa ) ;
Strunowy system operacyjny = System. dziesięć ( „NUMBER_OF_PROCESORÓW” ) ;
System. na zewnątrz . println ( „System liczby procesorów zawiera:” + system operacyjny ) ;
Strunowy katalog Windows = System. dziesięć ( „wiatr” ) ;
System. na zewnątrz . println ( „Wyświetlanie ścieżki katalogu głównego systemu -” + katalog Windows ) ;
}
}
Wyjaśnienie powyższego bloku kodu:
- Najpierw tworzona jest klasa o nazwie „ Klasa główna ” i „ System.pobierzv() ” służy do zwracania ścieżki do folderu tymczasowego poprzez przekazanie „ TEMP ” jako wartość.
- Następnie pobierana jest liczba procesorów i katalog Windows dla systemu, przekazując „ NUMBER_OF_PROCESORÓW ' I ' wiatr ” odpowiednio do metody „System.getenv()”.
Po kompilacji:
Dane wyjściowe potwierdzają, że pobrane zostały wymagane wartości zmiennych środowiskowych.
Różnica między Java System.getProperty a System.getenv
Różnicę między metodami System.getProperty() i System.getenv() opisano poniżej w tabeli:
Termin | System.getProperty() | System.pobierzv() |
---|---|---|
Zamiar | Służy do pobierania właściwości systemowych specyficznych dla JVM. | Służy do pobierania zmiennych środowiskowych specyficznych dla środowiska systemu operacyjnego. |
Źródło | Właściwości systemowe są zwykle ustawiane jako argumenty wiersza poleceń. | Zmienne środowiskowe są ustawiane w środowisku systemu operacyjnego. |
Dostęp | Może pobierać zarówno właściwości systemu, jak i zmienne środowiskowe. | Może pobierać tylko zmienne środowiskowe i wymaga określonych kluczy dla zmiennej. |
Stosowanie | Jest powszechnie używany do pobierania informacji o JVM, takich jak wersja Java. | Jest powszechnie używany do uzyskiwania dostępu do konfiguracji specyficznych dla środowiska lub poufnych informacji. |
Ruchliwość | Jest niezależny od platformy i można uzyskać do niego spójny dostęp w różnych systemach operacyjnych. | Zmienne mogą się różnić w różnych systemach operacyjnych i mogą mieć różne zachowania. |
Wniosek
„ System.getProperty() ” ma dostęp do właściwości specyficznych dla języka Java i konfiguracji systemu. „ System.pobierzv() ” uzyskuje dostęp do zmiennych środowiskowych zdefiniowanych w systemie operacyjnym. Jednak oba nadają się do zwracania informacji związanych z systemem. Ponadto mają podobne cele pozyskiwania informacji o środowisku systemowym, ale działają na różnych zbiorach danych.