Bruksklasse/metode

En verktøyklasse er en hjelpeklasse med statiske variabler og statiske metoder som utfører en spesifikk liste over relaterte oppgaver.

La oss se på eksempler på standard verktøyklasser:

java.lang.Math Denne klassen, som kan utføre mange forskjellige matematiske beregninger, gir oss noen matematiske konstanter.
java.util.Arrays Klassen inneholder ulike metoder for å arbeide med arrays (som sortering og søk i dem). Denne klassen har også en statisk fabrikk som lar oss se arrays som lister.
java.lang.System Denne klassen implementerer metoder for å jobbe med systemet. Oftest bruker vi den til å vise tekst på konsollen. For å gjøre dette refererer vi til statikkenutevariabel, som lagrer et PrintStream- objekt, og kaller dets println- metode ( System.out.println ).

Vi kan også lage en nytteklasse selv: For å gjøre dette lager vi ganske enkelt en klasse med de statiske offentlige metodene vi trenger. Men husk at du bør ha en god grunn for å lage en bruksklasse. For eksempel, kanskje du må bruke samme metode eller sett med metoder for å utføre en enkelt oppgave (for eksempel en kompleks beregning) i flere forskjellige klasser.

La oss se på et eksempel på en verktøyklasse - Paths -klassen.

Stier klasse

Denne klassen består av kun én statisk get -metode som har to varianter med forskjellige parameterlister.

Argumentene som vi kan overføre til get- metoden er:

få (streng først, streng... mer) En hel bane eller en liste over navn på kataloger og (eller) filen i det siste argumentet.
få(URI uri) En URI.

Denne verktøyklassen løser problemet med å konvertere en bane (i form av en streng) eller URI til en bane . Vi har allerede utforsket Path og forstår hvorfor vi trenger det og hvordan vi kan jobbe med det.

Som det skjer, har vi ofte å gjøre med stier i form av strenger eller URIer. Det er her vi kan bruke metodene til Paths- verktøyklassen.

La oss se på eksempler:

Eksempel Kommentar

Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    
Vi sender get -metoden en String (banen til filen) og får en Path . Så kan vi jobbe med det etter behov.

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    
En Path kan også fås fra en URI.

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    
Vi angir sekvensen av katalognavn og navnet på filen hvis bane med behov.

Men det er et forbehold her. Med ankomsten av Java 11 kaller enhver implementering av get- metoden Path.of .


public static Path get(String first, String... more) {
    return Path.of(first, more);
}
 
public static Path get(URI uri) {
    return Path.of(uri);
}
    

Denne verktøyklassen kan bli erklært utdatert, så vi bør bruke Path.of i stedet.

Før Etter

Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path =
Path.of("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Path.of(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    

ath path = Path.of(System.getProperty("user.home"),"documents", "document.txt");