Menu
CoddyTech

method Statis

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Java di Coddy. Pelajaran 16 dari 87.

Sama seperti variabel statis yang menjadi milik class, bukan instance, method statis juga menjadi milik class itu sendiri. Kamu dapat memanggilnya tanpa membuat object.

Deklarasikan method static dengan menambahkan kata kunci static:

public class MathHelper {
    public static int add(int a, int b) {
        return a + b;
    }
    
    public static int multiply(int a, int b) {
        return a * b;
    }
}

// Panggil tanpa membuat object
int sum = MathHelper.add(5, 3);      // 8
int product = MathHelper.multiply(4, 2);  // 8

Method static memiliki satu batasan penting: tidak dapat mengakses variabel instance atau method instance secara langsung. Karena method static ada tanpa object, tidak ada referensi this yang bisa digunakan.

public class Counter {
    private int count;              // Variabel instans
    private static int total;       // Variabel statis
    
    public static void incrementTotal() {
        total++;      // OK: mengakses variabel statis
        // count++;   // error! Tidak dapat mengakses variabel instans
    }
}

Static method cocok untuk operasi utilitas yang tidak bergantung pada status object. Contohnya, method seperti Math.sqrt() atau Integer.parseInt(). Static method menyediakan fungsi yang lebih sesuai pada tingkat class daripada untuk setiap object.

challenge icon

Tantangan

Mudah

Mari buat class utilitas StringUtils yang menyediakan method manipulasi string yang berguna tanpa perlu membuat object apa pun, cocok untuk mendemonstrasikan method static!

Kamu akan membuat dua file untuk mengatur kodemu:

  • StringUtils.java: Buat class utilitas dengan method static yang menjalankan operasi string umum:
    • Method static countVowels(String text) yang mengembalikan jumlah huruf vokal (a, e, i, o, u, huruf besar maupun kecil) dalam string yang diberikan
    • Method static reverse(String text) yang mengembalikan string dalam urutan terbalik
    • Method static isPalindrome(String text) yang mengembalikan true jika string dibaca sama dari depan maupun dari belakang, tanpa membedakan huruf besar dan kecil, dan false jika tidak
  • Main.java: Gunakan class utilitasmu untuk memproses string. Kamu akan menerima satu input: string teks. Panggil setiap method static langsung melalui nama class dan cetak tiga baris:
    • Vowels: [count]
    • Reversed: [reversed string]
    • Palindrome: true atau Palindrome: false

Kamu akan menerima satu input: string teks untuk dianalisis.

Ingat, method static dipanggil menggunakan nama class, seperti StringUtils.countVowels(text), bukan dengan membuat instance terlebih dahulu. Ini membuat class utilitas praktis untuk operasi yang tidak perlu mempertahankan state di antara pemanggilan.

Coba sendiri

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String text = scanner.nextLine();
        
        // TODO: Gunakan method statis StringUtils untuk menganalisis teks
        // Panggil StringUtils.countVowels(text) untuk mendapatkan jumlah huruf vokal
        // Panggil StringUtils.reverse(text) untuk mendapatkan string yang dibalik
        // Panggil StringUtils.isPalindrome(text) untuk memeriksa apakah teks merupakan palindrom
        
        // TODO: Cetak hasilnya dalam format berikut:
        // Vokal: [count]
        // Dibalik: [string yang dibalik]
        // Palindrome: true/false
        
    }
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler Java online