Upgrade to Pro — share decks privately, control downloads, hide ads and more …

final static modifier this

Avatar for KodeTR KodeTR
April 06, 2021

final static modifier this

Avatar for KodeTR

KodeTR

April 06, 2021
Tweet

More Decks by KodeTR

Other Decks in Programming

Transcript

  1. Final :: Static :: Modifier :: This Object - Oriented

    - Programming JAVA OOP www.kodetr.com kodetr
  2. Static keyword www.kodetr.com kodetr static keyword dapat kita gunakan untuk

    menjadikan atribut atau method bisa diakses tanpa perlu membuat object terlebih dahulu
  3. www.kodetr.com kodetr sebelumnya, kita telah belajar bahwa attribut & method

    dapat diakses setelah kita membuat object dari class terlebih dahulu // buat Object Kucing ku = new Kucing(); // akses attribut dan method System.out.println(ku.warna); System.out.println(ku.bersuara()); ku.berburu();
  4. www.kodetr.com kodetr Nah, sekarang kita bisa mengakses attribut & method

    static tadi seperti ini // buat Object Kucing kucing = new Kucing(); Gak perlu buat object terlebih dahulu warna bersuara() berburu() Langsung dipanggil Langsung menggunakan nama Class jika berbeda class Kucing.warna Kucing.bersuara() Kucing.berburu()
  5. www.kodetr.com kodetr public class Kucing { public static String warna

    = "merah"; public static String bersuara(){ return "meong"; } public static void berburu(){ System.out.println("berburu ikan"); } } Untuk menandai atribut atau method sebagai static, cukup tambahkan static seperti contoh berikut
  6. www.kodetr.com kodetr Static keyword STATIC NON STATIC // akses attribut

    dan method System.out.println(warna); System.out.println(bersuara()); berburu(); // buat Object Kucing kucing = new Kucing(); // akses attribut dan method System.out.println(kucing.warna); System.out.println(kucing.bersuara()); kucing.berburu();
  7. www.kodetr.com kodetr public class Kucing { public String warna; public

    String berburu; public Kucing(String warna) { this.warna = warna; } public void Berburu(String berburu) { this.berburu = berburu; } } Penggunaan This keyword
  8. www.kodetr.com kodetr public class Kucing { public String warna; public

    String berburu; public Kucing(String warna) { warna = warna; } public void Berburu(String berburu) { this.berburu = berburu; } } Penggunaan salah ”Hanya mengisi dirinya sendiri” Penggunaan benar
  9. www.kodetr.com kodetr public class Kucing { public String warna; public

    String berburu; public Kucing(String warna) { this.warna = warna; } public void Berburu(String berburu) { this.berburu = berburu; } } Merujuk pada attribut global untuk mengisi variabel
  10. www.kodetr.com kodetr public class Kucing { public String warna; public

    String berburu; public Kucing(String warna) { this.warna = warna; } public void Berburu(String berburu) { this.berburu = berburu; } } Kucing kucing = new Kucing("Merah"); kucing.Berburu("berburu ikan"); warna: merah bisa berburu ikan System.out.println(kucing.warna); System.out.println(kucing.berburu);
  11. Final keyword www.kodetr.com kodetr Digunakan dalam mendeklarasikan : * Class

    :: “tidak bisa diturunkan lagi” * Attribut :: “tidak bisa diubah nilainya” * Method :: “tidak bisa melakukan overriding” final bukan modifier
  12. Class Final keyword www.kodetr.com kodetr public final class Kucing {

    ...... } public class MainKucing extends Kucing { ...... } class tidak bisa diturunkan lagi Error
  13. Attribut Final keyword www.kodetr.com kodetr public final String warna; attribut

    tidak bisa diubah nilainya public final String warna = “merah”; public Kucing(String warna) { this.warna = warna; } Cara yang Salah
  14. Attribut Final keyword www.kodetr.com kodetr attribut tidak bisa diubah nilainya

    public final String warna = “merah”; public Kucing() { warna = “hijau”; } Cara yang Salah
  15. Attribut Final keyword www.kodetr.com kodetr public final String warna =

    "merah"; attribut tidak bisa diubah nilainya public final String warna; public Kucing(String warna) { this.warna = warna; } Cara yang Benar
  16. Method Final keyword www.kodetr.com kodetr public class Kucing { public

    final void berburu() { System.out.println("berburu ikan"); } } public class MainKucing extends Kucing { public void berburu(){ System.out.println("berburu tikus"); } } tidak bisa melakukan overriding Error
  17. Modifier www.kodetr.com kodetr Hak Akses yang diberikan kepada sebuah variabel

    / method / class dengan tujuan menjaga data tersebut ketika ingin diakses object lain
  18. www.kodetr.com kodetr public class PenjualanTas{ private final String nama; private

    static int ?; private final int harga; public PenjualanTas(String ?, int ?) { ? = nama; this.harga = ?; } public static ? setQty(int ?) { this.qty = qty; } public ? struk() { // tempat print ? return ?; } } PenjualanTas.java Output : Nama Tas : Eiger QTY : 3 Harga : 1000000 Total Harga : 3000000