Field (Atribut)
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Java di Coddy. Pelajaran 6 dari 87.
Field (atribut) adalah variabel yang menyimpan data di dalam class. Field biasanya private dan diakses melalui method getter dan setter.
Mendeklarasikan field
public class Person {
private String name;
private int age;
}Menambahkan getter dan setter
public class Person {
private String name;
private int age;
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return this.age;
}
public void setAge(int age) {
if (age >= 0) {
this.age = age;
}
}
}Menggunakan class
Person person = new Person();
person.setName("Alice");
person.setAge(25);
System.out.println(person.getName()); // AliceMenjadikan field private disebut enkapsulasi. Ini melindungi data dengan mengontrol akses melalui method, sehingga kamu bisa menambahkan validasi di setter.
Tantangan
SedangBuat class BankAccount dengan field private dan method getter:
- Field private:
accountName(String) danbalance(double) - Sebuah constructor untuk mengatur kedua field
- Method getter untuk setiap field
- Method
deposit()untuk menambahkan uang - Method
withdraw()yang mengembalikan "Success" atau "Insufficient funds"
Coba sendiri
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
double initial = Double.parseDouble(scanner.nextLine());
double deposit = Double.parseDouble(scanner.nextLine());
BankAccount account = new BankAccount(name, initial);
System.out.println("Account: " + account.getAccountName());
System.out.println("Balance: " + account.getBalance());
account.deposit(deposit);
System.out.println("After deposit: " + account.getBalance());
String result = account.withdraw(2000);
System.out.println("Withdraw 2000: " + result);
System.out.println("Final Balance: " + account.getBalance());
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengantar OOPClass dan ObjectKata Kunci thisMethodField (Atribut)Method KonstruktorOverloading KonstruktorRangkuman: Kalkulator Sederhana4Pewarisan
Pewarisan Dasar (extends)Kata Kunci superMethod Overriding (@Override)Rantai KonstruktorKelas ObjectPewarisan Tunggal dan BertingkatMengapa Tidak Ada Pewarisan Multi-KelasRangkuman: Hierarki Karyawan7method Khusus & class Object
method toString()equals() dan hashCode()method clone()compareTo() dan ComparableAntarmuka ComparatorUlasan: Pengurutan Kustom10Penanganan Exception dalam OOP
Hierarki class ExceptionException KustomError Checked vs UncheckedPola Try-with-ResourcesRekap: Pengguna Tervalidasi2Modifier Akses & Enkapsulasi
Ikhtisar Tingkat AksesMethod Getter dan SetterPenyembunyian InformasiKata Kunci finalUlasan: Pengelola Rekening Bank5Polimorfisme
Dasar method overloadingMethod overriding (Saat program berjalan)Upcasting dan downcastingOperator instanceofclass dan method abstrakUlasan: Kalkulator Bentuk8Konsep OOP Lanjutan
Komposisi vs PewarisanAgregasi vs Komposisiinner, nested, dan anonymous classEnum dan method Enumrecord (Java 16+)sealed class (Java 17+)11Pola Desain Bagian 1
Pengantar Pola DesainPola SingletonPola FactoryPola BuilderPola ObserverPola Strategy3property class dan Anggota Statis
Variabel Instance vs Statismethod StatisBlok StatisKonstanta (static final)Rangkuman: Penghitung dan Utilitas6Antarmuka & Kelas Abstrak
Pengantar AntarmukaMengimplementasikan AntarmukaImplementasi Beberapa AntarmukaDefault & Static pada AntarmukaKelas Abstrak vs AntarmukaAntarmuka FungsionalRekap: Sistem PembayaranLatihan sendiri: Compiler Java online