CodeGym /Java Blog /Random /Ano ang isang static na klase sa Java?
John Squirrels
Antas
San Francisco

Ano ang isang static na klase sa Java?

Nai-publish sa grupo
Ang Java ay isang object-oriented programming language, at ang mga object ay ang pangunahing mga bloke ng gusali sa Java. Gayunpaman, nagbibigay din ang Java ng konsepto ng isang static na klase. Ang static na klase ay isang klase na maaari lamang maglaman ng mga static na pamamaraan, variable, at nested na klase. Sa artikulong ito, tuklasin natin kung ano ang isang static na klase, kung paano ito gumagana, at ang pagpapatupad nito sa Java.

Static na klase sa Java

Ang isang static na klase sa Java ay isang klase na hindi ma-instantiate. Iyon ay, hindi tayo makakalikha ng mga bagay ng isang static na klase. Maa-access lang natin ang mga miyembro nito gamit ang pangalan ng klase mismo. Sa madaling salita, ang isang static na klase ay isang klase na naglalaman lamang ng mga static na miyembro. Ang mga static na klase ay kadalasang ginagamit upang pagsama-samahin ang mga nauugnay na pamamaraan ng utility. Halimbawa, ang klase ng Math sa Java ay isang static na klase na nagbibigay ng iba't ibang mga pagpapatakbo ng matematika tulad ng paghahanap ng maximum o minimum na halaga, mga function ng trigonometriko, at higit pa. Maa-access natin ang mga pamamaraan sa klase ng Math gamit ang pangalan ng klase at ang operator ng tuldok, tulad nito: Math.max(5, 10) .

Halimbawa

Tingnan natin ang isang halimbawa ng isang static na klase sa Java. Ipagpalagay na gusto naming lumikha ng isang klase upang magsagawa ng iba't ibang mga operasyon ng string tulad ng pag-reverse ng isang string, paghahanap ng haba ng isang string, at higit pa. Sa halimbawang ito, lumikha kami ng isang static na klase na tinatawag na StringUtils , na naglalaman ng dalawang static na pamamaraan: reverse at length . Ang mga pamamaraang ito ay kumukuha ng isang string bilang isang argumento at ibabalik ang reversed string at ang haba ng string, ayon sa pagkakabanggit. Sa pangunahing pamamaraan, gumawa kami ng string str at ipinasa ito sa `reverse` at `length` na pamamaraan ng StringUtils class.
public class StringUtils {

    public static String reverse(String str) {
        StringBuilder sb = new StringBuilder(str);
        return sb.reverse().toString();
    }

    public static int length(String str) {
        return str.length();
    }

    public static void main(String[] args) {
        String str = "Hello, World!";

        String reversedStr = StringUtils.reverse(str);
        int strLength = StringUtils.length(str);
        System.out.println(reversedStr);
        System.out.println(strLength);
    }
}
Ang magiging output ng programa ay:
!dlroW ,olleH 13
Sa susunod na na-update na halimbawa, nagdagdag kami ng static na nested class na tinatawag na Formatter sa loob ng StringUtils class. Naglalaman din ang static na nested class na ito ng static na paraan na tinatawag na format na kumukuha ng string at ibinabalik ang uppercase na bersyon nito. Sa pangunahing pamamaraan, ginamit namin ang static na nested class Formatter upang i-format ang string str at i-print ito sa console. Tinawag din namin ang reverse at length method ng StringUtils class para baligtarin ang string at hanapin ang haba nito, ayon sa pagkakabanggit.
public class StringUtils {

    // nested Static class
    public static class Formatter {
        public static String format(String str) {
            return str.toUpperCase();
        }
    }

    public static String reverse(String str) {
        StringBuilder sb = new StringBuilder(str);
        return sb.reverse().toString();
    }

    public static int length(String str) {
        return str.length();
    }

    public static void main(String[] args) {
        String str = "Hello, World!";

        // Using static class
        String formattedStr = StringUtils.Formatter.format(str);
        System.out.println(formattedStr);

        String reversedStr = StringUtils.reverse(str);
        int strLength = StringUtils.length(str);
        System.out.println(reversedStr);
        System.out.println(strLength);
    }
}
Ang magiging output ng programa ay:
HELLO, MUNDO! !dlroW ,olleH 13
Gaya ng nakikita mo, ang mga static na klase sa Java ay maaari ding maglaman ng mga static na nested na klase, na maaaring magamit upang pagsama-samahin ang magkakaugnay na paggana.

Konklusyon

Sa konklusyon, ang isang static na klase sa Java ay isang klase na maaari lamang maglaman ng mga static na pamamaraan, variable, at nested na klase. Hindi kami makakagawa ng mga object ng isang static na klase at maa-access lang ang mga miyembro nito gamit ang pangalan ng klase mismo. Ang mga static na klase ay kadalasang ginagamit upang pagsama-samahin ang mga nauugnay na pamamaraan ng utility. Sa halimbawa sa itaas, nakita namin kung paano lumikha ng isang static na klase at gamitin ito upang magsagawa ng iba't ibang mga operasyon ng string.
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION